isNaN在输入2个字符之前不会触发

时间:2013-02-06 01:01:31

标签: javascript

我的HTML代码是:

<input onKeyPress="validateA(this.value)" type="text" id="AAA" name="AAA" size="10" placeholder="A">
<span id="aspan" class="validate">  </span>

我的Javascript是:

function validateA(valueOfAAA) {
if (isNaN(valueOfAAA)) {
    document.getElementById('aspan').innerHTML="Please enter a numerical value.";

}
else {
    document.getElementById('aspan').innerHTML="";
}

}

澄清一下,我的问题是:

为什么innerHTML="Please enter a numerical value."在我输入框中输入两个字母或数字之前不会触发?

1 个答案:

答案 0 :(得分:3)

onKeyPress()更改为onKeyUp() 因为当按键触发时,尚未捕获输入的实际值。