html禁止特殊字符输入,防止特殊字符输入到HTML文本字段

我有一个输入文本字段,需要限制哪些字符可以输入。作为一种防止错误输入的防御形式,我试图不让用户输入不正确的东西。输入可以是[a-zA-Z -._]个字符,限制为32个字符。防止特殊字符输入到HTML文本字段

正如你所看到的,我已经有32个字符限制想通了,并从输入任何更多的已达到极限后阻止用户。但是我在防止输入不正确的字符时遇到了问题。

我使用jQuery的.keypress()和.keydown()事件捕做的事情类似于以下尝试:

$("#aliasEntry").keypress(function(e)

{

var code = e.which || e.keyCode;

// 65 - 90 for A-Z and 97 - 122 for a-z 95 for _ 45 for - 46 for .

if (!((code >= 65 && code <= 90) || (code >= 97 && code <= 122) || code == 95 || code == 46 || code == 45))

{

var text = $("#aliasEntry").val();

text = text.substring(0,text.length);

$("#aliasEntry").val(text);

}

});

但这样做的问题是,浏览器总是插入键入的字符进入事件处理后的文本框中,这使得代码无用,因为我试图消除的字符尚未输入。有没有一种方法可以防止浏览器在用户输入字符后将字符插入文本框?

2010-08-23

JDC

+2

使用jQuery时,您不必再次对['e.which'](http://api.jquery.com/event.which/)进行标准化。 –

2010-08-23 23:06:56

+0

请记住,最好有一些用户界面解释为什么用户的键盘突然停止工作。 –

2010-12-21 19:38:44

+2

还记得做服务器端验证。客户端验证非常容易欺骗(在这种情况下,在我的浏览器上关闭JavaScript) –

2010-08-23 23:02:39

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值