用Javascript替换引号?

时间:2010-02-28 15:49:40

标签: javascript replace quotation-marks

对于我正在制作的网络应用,我将会收到文本字符串,偶尔会包含引号。因为我将成为document.writing字符串,所以需要将它们更改为撇号或转义。我该怎么做,因为当我尝试它似乎不起作用时,特别是我认为因为字符串的引号会阻止脚本的其余部分工作。

希望这是有道理的,我对此很新,所以这就是为什么它可能没有意义。如果需要,我会尽力澄清。谢谢!

4 个答案:

答案 0 :(得分:16)

为HTML转义它们:

var escapedString = string.replace(/'/g, "'").replace(/"/g, """);

为JS代码转义它们:

var escapedString = string.replace(/(['"])/g, "\\$1");

答案 1 :(得分:10)

如果要在服务器上生成Javascript字符串,则需要转义引号和某些其他字符。

\'      Single quotation mark  
\"      Double quotation mark  
\\      Backslash  
\b      Backspace  
\f      Form feed  
\n      New line  
\r      Carriage return  
\t      Horizontal tab  
\ddd    Octal sequence (3 digits: ddd)  
\xdd    Hexadecimal sequence (2 digits: dd)  
\udddd  Unicode sequence (4 hex digits: dddd)   

答案 2 :(得分:1)

你需要像这样逃避它们:

var foo = '\'foo\'';

因此,如果源字符串有单引号,请用斜杠和单引号替换每个单引号。

答案 3 :(得分:1)

在一些 HTML 中尝试以下代码:

<块引用>

string.replace(/"/g, '');

如果只是JS,你可以使用:

<块引用>

string.replace(/"/g, '');

这会删除用户提交的值上不需要的引号。