2

我正在尝试在 ajax 调用中执行以下操作

index.js.erb

$("#dialog").text("<%= render("index") %>")

它在我的 js 控制台中告诉我有一个未终止的字符串文字(这是真的,因为部分中有引号和空格。

我曾尝试使用 escape_javascript,但它会显示部分代码。我也试过调用 raw(escape_javascript(render("index")) 没有成功。

我认为我需要做的就是转义双引号并删除空格。有这个功能吗?

干杯蒂姆

4

1 回答 1

5

好的,问题不在于转义,而是 jQuery 文本方法使用的自动编码。

我用了

$("#dialog").text("")
$("#dialog").append("<%= render(escape_javascript("index")).html_safe %>")

很难找到,因为我的 Firebug 对我撒谎并向我展示了渲染的字符而不是编码的版本。

于 2011-03-29T04:07:51.543 回答