【发布时间】:2011-07-22 11:07:32
【问题描述】:
我为输入文本字段编写了一个验证代码,它只需要数字和一些控制键。我得到了 stackoverclow 的帮助 :),所以我又来这里寻求帮助了。我的验证码是
$("#txtLevel1Year").keydown(function(event)
{
// Allow only backspace,delete,left arrow,right arraow and Tab
if ( event.keyCode == 46
|| event.keyCode == 8
|| event.keyCode == 37
|| event.keyCode == 39
|| event.keyCode == 9)
{
// let it happen, don't do anything
}
else {
// Ensure that it is a number and stop the keypress
if ((event.keyCode < 48 || event.keyCode > 57) && (event.keyCode <96 ||event.keyCode > 105) ) {
event.preventDefault();
}
}
});
现在让我告诉你我在寻找什么,首先,我想限制这个字段恰好取 4 位数字。不少于不多,第二个是关于优化。 我希望此验证起作用的文本字段是(是)
<asp:TextBox runat="server" ID="txtLevel1Year" Width="50px" TabIndex="13"></asp:TextBox>
<asp:TextBox runat="server" ID="txtLevel2Year" Width="50px" TabIndex="17"></asp:TextBox>
<asp:TextBox runat="server" ID="txtLevel3Year" Width="50px" TabIndex="21"></asp:TextBox>
<asp:TextBox runat="server" ID="txtLevel4Year" Width="50px" TabIndex="25"></asp:TextBox>
在这里,我可以通过抓取四个不同的 id 来重复验证代码 4 次来完成这项工作,尽管验证是完全相同的。我可以做任何可以消除这种重复的事情吗?如果您不清楚我的问题,请告诉我。 提前谢谢大家。 这是这个问题的编辑部分,我通过创建一个 CSS 类并在我放置全年文本框的 div 中调用它来实现优化的目标。但是我的限制使它恰好是 4 位数还有待解决。请帮我。
【问题讨论】:
-
这样的验证记得用复制和粘贴来测试该字段 - 都使用键盘快捷键和鼠标右键单击。
-
能否请您告诉我如何才能做到这一点?
标签: javascript jquery asp.net validation