Javascript 删除不需要的字符的最佳方法
我有一个要清理的HTML输入。我希望用户输入除某些字符以外的所有内容。我不知道这些字符是什么,但用户通过复制和粘贴的方式输入它们。升华文本将它们显示为STX、SOH等。我不知道你是否能看到它们,但它们在这里: ". 我不想列出我接受的每个字符,也不能列出这些STX、SOH字符。我不能使用A-Za-z,因为我还希望用户输入像‘ç’这样的字符 我怎样才能轻松做到这一点 这是我在这里找到的-未完成-代码的一部分:Javascript 删除不需要的字符的最佳方法,javascript,jquery,html,input,input-sanitization,Javascript,Jquery,Html,Input,Input Sanitization,我有一个要清理的HTML输入。我希望用户输入除某些字符以外的所有内容。我不知道这些字符是什么,但用户通过复制和粘贴的方式输入它们。升华文本将它们显示为STX、SOH等。我不知道你是否能看到它们,但它们在这里: ". 我不想列出我接受的每个字符,也不能列出这些STX、SOH字符。我不能使用A-Za-z,因为我还希望用户输入像‘ç’这样的字符 我怎样才能轻松做到这一点 这是我在这里找到的-未完成-代码的一部分: function validate(evt) { var theEvent = e
function validate(evt) {
var theEvent = evt || window.event;
var key = theEvent.keyCode || theEvent.which;
key = String.fromCharCode( key );
// var regex = /[0-9]|\./;
var regex = /[a-zA-Z0-9\!\'\+\-\&\\\/\(\)\?\@\#\$\%\^\*\_\|]+/;
if( !regex.test(key) ) {
theEvent.returnValue = false;
theEvent.preventDefault();
}
}
提前非常感谢我没有确定的答案,但我将从正则表达式中的字符类开始,特别是Unicode类别:。(我知道你的问题是关于JS的,不过是为了获得灵感)
var regex=/[^\x20-\x7E]+/代码>?或者更好的方法是只替换输入事件上的字符串:$('#input初始化').on('input',function(){this.value=this.value.replace(/[^\x20-\x7E]+/g',);})代码>。当然,这也应该在服务器端进行检查。我不知道要在那里添加多少字符。我写了STX,SOH,但我肯定有很多这样的角色。比如像表情符号。这只是一个HTML输入,还是他们实际上是复制粘贴到一个内容可编辑的div
?我以前在内容可编辑div和复制粘贴方面遇到过一些问题。我没有明确的答案,但我会从正则表达式中的字符类开始,特别是Unicode类别:。(我知道你的问题是关于JS的,不过是为了获得灵感)var regex=/[^\x20-\x7E]+/代码>?或者更好的方法是只替换输入事件上的字符串:$('#input初始化').on('input',function(){this.value=this.value.replace(/[^\x20-\x7E]+/g',);})代码>。当然,这也应该在服务器端进行检查。我不知道要在那里添加多少字符。我写了STX,SOH,但我肯定有很多这样的角色。比如像表情符号。这只是一个HTML输入,还是他们实际上是复制粘贴到一个内容可编辑的div
?我以前在内容可编辑div和复制粘贴方面遇到过问题。