转义javascript变量双引号

时间:2012-07-30 10:23:17

标签: javascript escaping

我正在使用Ajax调用从数据库中获取一些变量数据。 我存储在数据库中的一些数据包含双引号(“)。

当我试图显示变量时:

value="'+ucontent+'"

字符串在中间(当然)被剪切

我尝试过使用escape()但是我得到了一个不可读的结果 - %4%2等...

如何在变量中转义双引号并仍然保持可读字符串... 顺便说一句 - 我使用的是UTF8字符。

3 个答案:

答案 0 :(得分:2)

取决于您使用的服务器端语言。

如果是php,则使用json_encode对响应字符串进行编码。

如果是ruby(rails),则使用escape_javascript来转义响应字符串。

答案 1 :(得分:2)

decodeURIComponent() 

可能会有所帮助

escape实际上做的是用十六进制转义序列替换一些字符。 这就是为什么你得到像%4%2这样不可读的字符串的原因。

答案 2 :(得分:0)

如果您不使用编码器,则可以使用\"。请参阅this