2017-04-18 47 views
0

我在我的網站上有input type="text",我試圖編寫代碼,可以檢查字段是否爲空。檢查編輯字段的內容

if (number>0)document.getElementById("score").innerHTML="+"; 
else if (number<0)document.getElementById("score").innerHTML="-"; 
else if (number==0)document.getElementById("score").innerHTML="0"; 
else document.getElementById("score").innerHTML="this is not a number"; 

而且當該字段爲空時,它仍顯示「0」被輸入。

____edit

var number = document.getElementById("field").value; 

<input type="text" id="field"> 
+0

什麼是'number'? – brso05

+0

什麼是你的數字變量的來源? 在JavaScript中,如果變量的值未定義,或者爲null或爲空或爲false,則它等於0.請始終記住這一點。 –

+0

我編輯並添加了其他信息 – forschool

回答

3

這裏是一個可行的解決方案,顯示沒有在score DIV時再輸入字段爲空。 (你可以改變它顯示一條消息,如果你想要的。)

var score = document.getElementById('score'); 
 

 
document.getElementById('field').addEventListener('keyup', checkNum); 
 

 
function checkNum() { 
 
    var number = parseInt(document.getElementById('field').value); 
 
    if (number>0) score.innerHTML="+"; 
 
    else if (number<0) score.innerHTML="-"; 
 
    else if (number==0) score.innerHTML="0"; 
 
    else if (document.getElementById('field').value=="") score.innerHTML=""; 
 
    else score.innerHTML="this is not a number"; 
 
}
#score { 
 
    display: inline-block; 
 
    border: 2px solid red; 
 
    border-radius: 4px; 
 
    font-weight: 700; 
 
    padding: 4px; 
 
}
<input type="text" id="field"> 
 

 
<br><br> 
 

 
<div id="score"></div>