如何禁止使用jQuery键入或粘贴字符(并替换它们)?
我试图找到一种方法来替换表单中所有输入字段(基本上是文本框和文本区域)中输入或粘贴的不允许字符。每当用户粘贴包含一个或多个不允许的字符的文本时,我都希望用空字符串“”替换该字符,但保留其余文本的完整性。如果他们一次又一次地键入角色,我只希望“什么也不发生”(例如,如果他们键入角色,则该角色不会出现) 是否有关于如何执行此操作的代码示例或已经执行此操作的jQuery插件(以及如何实际使用它的示例)?我正在尝试找到一种适用于任何形式粘贴的方法(从浏览器菜单,使用鼠标/菜单命令,操作系统快捷方式进行粘贴等)以及通过键入直接用户输入如何禁止使用jQuery键入或粘贴字符(并替换它们)?,jquery,regex,jquery-plugins,Jquery,Regex,Jquery Plugins,我试图找到一种方法来替换表单中所有输入字段(基本上是文本框和文本区域)中输入或粘贴的不允许字符。每当用户粘贴包含一个或多个不允许的字符的文本时,我都希望用空字符串“”替换该字符,但保留其余文本的完整性。如果他们一次又一次地键入角色,我只希望“什么也不发生”(例如,如果他们键入角色,则该角色不会出现) 是否有关于如何执行此操作的代码示例或已经执行此操作的jQuery插件(以及如何实际使用它的示例)?我正在尝试找到一种适用于任何形式粘贴的方法(从浏览器菜单,使用鼠标/菜单命令,操作系统快捷方式进行粘
具体地说,我们需要禁止以
{
、[
、]
或}
的形式使用大括号
HTML
演示:
<textarea name="" id="text" cols="30" rows="10"></textarea>
$(function(){
$('#text').on('keyup paste',function(){
oldtxt = $(this).val();
find = '(\{?)(\}?)(\\[?)(\\]?)';
newtxt = oldtxt.replace(new RegExp(find, 'g'), '');
$(this).val(newtxt);
});
});