JavaScript中的CheckNumeric值
我有这个函数用于检查文本框值,以便只输入整数值JavaScript中的CheckNumeric值,javascript,jquery,Javascript,Jquery,我有这个函数用于检查文本框值,以便只输入整数值 function CheckNumeric(e) { if (window.event) // IE { if ((e.keyCode < 48 || e.keyCode > 57) & e.keyCode != 8) { event.returnValue = false; return false; } } el
function CheckNumeric(e) {
if (window.event) // IE
{
if ((e.keyCode < 48 || e.keyCode > 57) & e.keyCode != 8) {
event.returnValue = false;
return false;
}
}
else { // Fire Fox
if ((e.which < 48 || e.which > 57) & e.which != 8) {
e.preventDefault();
return false;
}
}
}
函数检查数字(e){
if(window.event)//IE
{
if((e.keyCode<48 | | e.keyCode>57)&e.keyCode!=8){
event.returnValue=false;
返回false;
}
}
否则{///火狐
if((e.which<48 | | e.which>57)&e.which!=8){
e、 预防默认值();
返回false;
}
}
}
在此函数中,文本框可以接受0
作为值并拒绝任何字符
现在我想将此函数更改为拒绝0
,如果它作为第一个字符输入
例如,拒绝此项:
010
并接受此项:10
您需要检查如果(e.keyCode==48&&input.value.length==0)
则返回false代码>
input
是文本框元素
像这样的
if (window.event) // IE
{
if (((e.keyCode < 48 || e.keyCode > 57) & e.keyCode != 8) || (e.keyCode == 48 && input.value.length == 0)) {
event.returnValue = false;
return false;
}
}
if(window.event)//IE
{
if((e.keyCode<48 | | e.keyCode>57)&e.keyCode!=8)| |(e.keyCode==48&&input.value.length==0)){
event.returnValue=false;
返回false;
}
}
应该是这样
(e.keyCode < 48 || e.keyCode > 57) && e.keyCode != 8)
(e.keyCode<48|e.keyCode>57)和&e.keyCode!=8)
而不是
(e.keyCode < 48 || e.keyCode > 57) & e.keyCode != 8)
(e.keyCode<48|e.keyCode>57)&e.keyCode!=8)
看起来您正在使用内联JavaScript验证输入。因为您使用的是jQuery,所以您可以使用它来绑定submit/keypress/which事件,并去掉IE特定的代码。当您调用CheckNumber函数时?