以下简单的jQuery函数在Mozilla Firefox(5.0)上运行完美,但在Internet Explorer(4.0)上不起作用。
$(document).ready(function()
{
$("#textFieldId").keypress(function(event)
{
if (event.keyCode==46 || event.keyCode==8|| event.keyCode==9 || event.keyCode>=35 && event.keyCode<=40)
{
// let it happen, don't do anything
}
else
{
if (event.charCode<48 || event.charCode>57 || event.charCode==16)
{
event.preventDefault();
}
}
});
});
此功能仅允许给定文本字段中的数字。应该对它进行哪些更改,以便它可以在Internet Explorer上运行?
答案 0 :(得分:1)
如果您正在寻找其他替代方案,请尝试this。
function isNumberKey(evt)
{
var charCode = (evt.which) ? evt.which : event.keyCode
if (charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
和HTML as
<INPUT id="txtChar" onkeypress="return isNumberKey(event)" type="text" name="txtChar">