Javascript 在contenteditable div中防止不安全的unicode字符

Javascript 在contenteditable div中防止不安全的unicode字符,javascript,html,Javascript,Html,我的一个表单中有一个内容可编辑的div,用户创建了一个行分隔符unicode字符,由\u2028表示。这导致Javascript抛出“非法字符”错误。防止提交此类字符的最佳方法是什么 坏字符: \u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u202f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff找出JavaScript破坏的原因而不是将其列入黑名

我的一个表单中有一个内容可编辑的div,用户创建了一个行分隔符unicode字符,由\u2028表示。这导致Javascript抛出“非法字符”错误。防止提交此类字符的最佳方法是什么

坏字符:
\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u202f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff

找出JavaScript破坏的原因而不是将其列入黑名单是一个更好的主意吗?这些字符通常是不安全的:最好在服务器端执行。你可以写一个正则表达式来匹配它们。很难看出什么是将U+00AD软连字符列入黑名单的好理由。另一方面,实现黑名单(在客户端JavaScript中)的技术问题是什么?在内容发生任何更改后,您不能将元素内容与包含禁止字符的regexp进行匹配吗?或者仅在将内容复制到隐藏字段以提交表单时,如果不需要/不需要即时检查。