2016-05-26 35 views
0

我無法作出簡單的JavaScript採取在文本框中一個數字,whne點擊按鈕返回結果。JavaScript的奇/偶的形式

<html> 
<head> 

<body> 

<form> 
<input id = "evenoddinput" > 

<input type="button" value="check" OnClick="check();"> 
</form> 
<script> 
function check() 
{ 
    var v=document.getElementById("evenoddinput").value; 

    if(v%2==0) 
    { 
    } document.write("Even"); 

    else 
    { 
    document.write("odd"); 
    } 


} 
</script> 

</body> 
</html> 
+0

忘了'docuent.write()'。搜索'使用document.createElement()'和考慮'Node.innerHTML'和'Node.textContent'操作DOM – Thomas

+0

的getElementById而不是getValueById;) – AxelH

回答

4

正確語法由id屬性來選擇元件是getElementByIdgetValueById

同樣使用console.log()進行調試。

function check() { 
 
    var v = document.getElementById('evenoddinput').value; 
 
    if (v % 2 == 0) { 
 
    console.log("Even"); 
 
    } else { 
 
    console.log("odd"); 
 
    } 
 
}
<form> 
 
    <input id="evenoddinput"> 
 
    <input type="button" value="check" OnClick="check();">

+0

的'+'投,我不能找到一種方法,卡在我的腦海裏!首先,他需要使用調試器,因爲這個問題寫得很清楚。 – AxelH

+0

@AxelH,我懷疑這是否會造成任何傷害..不管怎麼說呢...... – Rayon

+0

不,這是一個很好的接觸。不夠用。 – AxelH

0

你的代碼是錯誤的 它必須是

var v=document.getElementById("evenoddinput").value; 

var v=document.getValueById(evenoddinput).value; 
0

不建議使用document.write寫入到頁面。因爲它會取代整個頁面內容。最好使用結果字段並將結果寫入此字段中作爲innerHTML

function check() { 
 
    var v = document.getElementById('evenoddinput').value; 
 
    
 
    var result; 
 
    if (v % 2 == 0) { 
 
    result = "Even"; 
 
    } else { 
 
    result = "odd"; 
 
    } 
 
    
 
    document.getElementById("result").innerHTML = result; 
 
    
 
}
<input id="evenoddinput"> 
 
<input type="button" value="check" OnClick="check();"> 
 

 
<div id="result"></div>