2012-07-30 31 views
0

我在我的網頁像一個div一個div,JavaScript來顯示使用div的類名

<div class="errormsg" style="display: none;">Username is empty</div> 

我有這樣的輸入域,

<input type=textbox id="userid" /> 

現在我需要一個如果輸入字段爲空,則顯示錯誤消息div。我需要使用div類而不是id。請幫忙。

P.S:我不想要Jquery,因爲我的頁面使用庫文件有一些限制。

+0

你需要什麼瀏覽器支持? – Inkbug 2012-07-30 06:53:27

+0

IE,ff和chrome – steeve 2012-07-30 07:04:44

+0

什麼版本(IE)? – Inkbug 2012-07-30 07:10:04

回答

1

試試這個,假設只有一個errormsg格 -

更新
我添加了一個fiddle here。另外,有一個錯字 - 修正

<div class="errormsg" style="display: none;">Username is empty</div> 
<input type=textbox id="userid" onchange="validate()" /> 

function validate(){ 
    var userId = document.getElementById('userId'), 
     errorMsg = document.getElementsByClassName('errormsg').item(); 
    if (userId.value === ''){ 
     errorMsg.style.display = 'block' 
    } else { 
     errorMsg.style.display = 'none'; 
    } 
} 
+0

這不工作吉比:( – steeve 2012-07-30 07:15:04

+0

等等,讓我爲你做一個小提琴 – 2012-07-30 07:15:43

+0

你的小提琴示例不工作太吉比:( – steeve 2012-07-30 07:54:13

-1

刪除了jQuery和添加的Javascript代碼如下:

<div class="errormsg">Username is empty</div> 
<input type='textbox' id="userid" onkeyup="javascript:call(this);" /> 

function getElementsByClassName(className) { 
    // For IE  
    if (document.all) { 
     var allElements = document.all; 
    } else { 
     var allElements = document.getElementsByTagName("*"); 
    } 
    var foundElements = []; 

    for (var i = 0, ii = allElements.length; i < ii; i++) { 
     if (allElements[i].className == className) { 
      foundElements[foundElements.length] = allElements[i]; 
     } 
    } 

    return foundElements; 

} 

function call(control) 
{ 
    var userid=document.getElementById('userid'); 
    var errorMsg = getElementsByClassName('errormsg')[0]; 
    if(userid.value == '') 
    {   
     errorMsg.style.display = "block"; 
    } 
    else 
    { 
     errorMsg.style.display = "none"; 
    } 
} 
+0

你可以請建議我如何檢查這個javascript?我有一些使用庫文件的限制。 – steeve 2012-07-30 07:08:50

+0

OP已經明確表示他做了不想要jQuery – 2012-07-30 07:13:04

0
<div class="errormsg">Username is empty</div> 
<input type='textbox' id="userid" onkeyup="javascript:call(this);" /> 

function getElementsByClassName(className) { 
    // For IE  
    if (document.all) { 
     var allElements = document.all; 
    } else { 
     var allElements = document.getElementsByTagName("*"); 
    } 
    var foundElements = []; 

    for (var i = 0, ii = allElements.length; i < ii; i++) { 
     if (allElements[i].className == className) { 
      foundElements[foundElements.length] = allElements[i]; 
     } 
    } 

    return foundElements; 

} 

function call(control) 
{ 
    var userid=document.getElementById('userid'); 
    var errorMsg = getElementsByClassName('errormsg')[0]; 
    if(userid.value == '') 
    {   
     errorMsg.style.display = "block"; 
    } 
    else 
    { 
     errorMsg.style.display = "none"; 
    } 
}