JavaScript / jQuery 转义特殊字符

xna*_*tox 0 javascript jquery

我需要转义带有特殊字符的字符串,但我不知道该怎么做。

String var 值由 Input 字段设置,因此用户可以根据需要编写任何特殊字符,即使是我不知道的字符,我也可以破坏语法......所以我不想按字符转义字符,而是知道什么是更好的方法来实现这一点。

这是我的示例代码:

string = '-|{}?" Hello \$#^*&@)(~';

newHTML= '<span class="color-red"><b>'+string+'</b></span>';

$('#my-div').append(newHTML);
Run Code Online (Sandbox Code Playgroud)

但是我遇到了语法错误。我想转义所有特殊字符...正如您所看到的,当我在字符串中使用 ' 时,此代码检测器也不起作用

sea*_*pip 5

或者简单的jQuery技巧:

string = $("<div></div>").text(string).html();
Run Code Online (Sandbox Code Playgroud)

text() 对临时 div 内的字符串进行编码,html() 获取编码后的字符串 :)