我使用下面的函數使用關鍵事件
function only_numeric(e)
{
var keynum;
var keychar;
var numcheck;
if(window.event) // IE
{
keynum = e.keyCode;
}
else if(e.which) // netscape/Firefox/opera
{
keynum = e.which;
}
//condition for backspace(music) Key
if(keynum != 8)
{
keychar = String.fromCharCode(keynum);
//numcheck = /\d/;
numcheck = /[.0-9]/;
return numcheck.test(keychar);
}
else
{
return true;
}
}
我叫在輸入框上面的功能檢查上的按鍵數量不工作時,Tab鍵事件,
<input required="" onkeypress='return only_numeric(event,this.id)' type="text" name="test1" id="test1" />
<input required="" onkeypress='return only_numeric(event,this.id)' type="text" name="test2" id="test2" />
的驗證號碼功能工作精細。我需要使用tabkey代碼(9)等相同的像退格鍵碼8.如果我在only_numeric
功能
...
if(keynum != 8 || keynum != 9)
{
....
標籤的功能不能正常工作使用的代碼等的下方。我在這裏做錯了什麼?
使用'&&'而不是'||'。 'x!= a ||當a!= b'時,x!= b'始終爲真。 – JJJ
'keynum'永遠不會是'8'或'9'(儘管這在不同的瀏覽器中會有所不同),只有當擊中「可打印鍵」時,onkeypress纔會觸發事件。 'onkeyup'或'onkeydown'也檢測其他鍵,如'tab'或'backspace'。 – Teemu