2012-03-30 61 views
0

我有一个HTML文本框,我限制了输入的特殊字符。但是当我使用Ctrl + V粘贴时,验证不会触发。jquery验证到粘贴命令的文本框

+1

显示您正在使用 – Curt 2012-03-30 10:18:09

+0

您可以禁用copypaste – 2012-03-30 10:18:38

+0

@AmritpalSingh我需要启用粘贴功能的代码,但想要在粘贴上验证并显示错误消息'请输入有效文本' – TRR 2012-03-30 10:20:04

回答

0

由于你的问题是用jquery标记的,你也可以绑定到粘贴事件。在这种情况下,使用方法.bind()附加多个事件(空格分隔)相同的处理程序:

$('#someElement').bind('keydown paste', function() { 
    // run some code when pasting or on keydown 
}); 
+0

我想知道如何做到这一点..我应该做的每个角色粘贴每个(),并用正则表达式验证或有没有最好的方法来做到这一点? – TRR 2012-03-30 12:14:46

+0

你可以有一个方法使用正则表达式来验证一些字符串。并且有两个事件处理程序调用此方法:keydown事件的处理程序将传递输入的字符,粘贴事件的处理程序将传递整个粘贴的值。但是,这也取决于你想要限制的方式:要么验证并说明字符串包含无效字符,要么禁止键入某些字符,然后宁愿有一种清除方法来删除不需要的字符。 – 2012-03-30 12:20:21

+0

好吧,说我有一个文本框输入第一个名字,在用户只允许输入字母,没有别的,即使用户粘贴的内容我的正则表达式应该能够清理输入的非字母表。 – TRR 2012-03-30 12:42:04