2

此代码负责防止用户输入非数字字符,例如除数字 [0-9] 之外的任何 ascii。在 IE 中运行良好,但在 Firefox 和 Chrome 中运行良好。非常感谢任何帮助和建议。

谢谢

'oKeyPress': function (e) {
    e = e || window.event;
    var charCode = (navigator.appName == "Netscape") ? e.which : e.keyCode;
    return !(charCode > 31 && (charCode < 48 || charCode > 57));
}
4

3 回答 3

2

使用特征检测;不是浏览器检测:

var charCode = e.charCode || e.keyCode;
于 2013-05-31T17:14:29.077 回答
1

在您的KeyPress活动中charcode使用它:

return (window.event ? e.keyCode : e.which)
于 2013-05-31T17:11:31.503 回答
0

谢谢大家的建议和反馈;我刚刚发现为什么它以前不能在 Firefox 和 chrome 上运行。它不工作的原因是因为我在我的 Code-behind C# 代码中使用了类似这样的代码:

this.txtApsId.Attributes.Add("onkeypress", "return (function(e) {var charCode = (navigator.appName == 'Netscape') ? e.which : e.keyCode; return charCode > 31 && (charCode < 48 || charCode > 57); }(event || window.event))");

谢谢

于 2013-05-31T18:10:13.383 回答