【发布时间】:2014-09-06 17:53:58
【问题描述】:
我有一个字符串,其中包含包含特殊字符(如撇号、引号、和号等)的文本,我想将其转换为 HTML 字符代码,例如显示&#39 而不是撇号等(根据以下列表:http://www.w3.org/MarkUp/html-spec/html-spec_13.html。
我不一定需要转换字母和空格,只要上面和其他一些基本字符编码正确即可。
对于临时解决方法,我使用str = str.replace("'", "&#39") 之类的简单替换,但希望避免这种情况,因为它只涵盖某些字符。
我在考虑encodeURI 或encodeURIcomponent,但想知道什么是最好和最简单的方法来实现这一目标,而无需进行不必要的编码。
如果这个想法是为了避免与动态插入的其他 JS 的任何问题,特别是,有人可以告诉这里最好的方法是什么。考虑单引号、双引号和任何其他可能导致问题的字符(仅指 JavaScript / jQuery 和英语)?
【问题讨论】:
-
大约一个月前我打算问这个问题......然后忘记了。
-
Javascript 并没有真正内置实体编码器,URI 编码是完全不同的东西。最好的选择可能是替换,这会造成重复。
-
谢谢。你是对的。
-
另见stackoverflow.com/questions/1787322/…,似乎是一篇类似的文章
-
也谢谢你!
标签: javascript jquery html urlencode encodeuricomponent