移动端input框如何禁止手机键盘上的表情输入?
// 输入时删除emoji字符
$("input").on("input", function(){
this.value = this.value.replace(/\ud83d[\udc00-\ude4f\ude80-\udfff]/g, '');
});
"i am emoji ????".replace(/\ud83d[\udc00-\ude4f\ude80-\udfff]/g, '');
// "i am emoji "
10 回答11.7k 阅读
2 回答3.2k 阅读✓ 已解决
5 回答2.2k 阅读
3 回答1.7k 阅读✓ 已解决
3 回答2.7k 阅读✓ 已解决
5 回答773 阅读
4 回答2.2k 阅读✓ 已解决
emoji 是合法的 unicode 字符,连域名都可以注册为 emoji 组成的:
https://❤️❤️❤️.ws
(复制到地址栏访问)如果你非要要禁掉 emoji,可以使用正则匹配去验证。但是同时,你可能也需要禁掉非常多的各种奇奇怪怪的字符。
所以一个可选的方案是使用白名单,只允许用户输入一部分 unicode 字符。
中文的我找到一个资料供参考:http://blog.csdn.net/middleki...
你再自己加入字母数字等即可。