在IE 11之前,如果您不想输入字符,可以在键码中加零。
<asp:TextBox id="TextBox1" runat="server" onkeypress="ValidateText();">
</asp:TextBox>
function ValidateText() {
if (!((window.event.keyCode < 48 || window.event.keyCode > 57) && window.event.keyCode != 46)) {
window.event.keyCode = 0;
}
这适用于IE 10,但不适用于IE 11。
答案 0 :(得分:0)
使用window.event
是在事件处理程序中获取事件的过时方式。最好将事件传递给处理程序,如下所示:
onkeypress="return ValidateText(event);"
请注意return
;这会有所帮助。
在您的事件处理程序中,您现在将事件作为参数传入。另外,要知道从事件处理程序返回false
会取消该事件。
function ValidateText(event) {
return event.keyCode < 48 || event.keyCode > 57 || event.keyCode === 46;
}
现在我们可以返回按下的键是否不是数字。