1

这是我的活检

作品:

:plain
  console.log("#{escape_javascript(render(@job_charge).html_safe)}");

不起作用(但应该?):

:plain
  console.log("#{j render(@job_charge).html_safe }");
4

3 回答 3

4

它看起来j实际上是 的简写json_escape,而不是escape_javascript

http://api.rubyonrails.org/classes/ERB/Util.html

于 2012-04-05T12:07:49.360 回答
1

j是 的简写json_escape

escape_javascript也存在(至少在 rails 3.x 中)但做了一些不同的事情 - 它转义字符串以在 javascript 字符串文字中使用。

我猜第一个样本由于不同的原因而失败。检查你的日志!

于 2012-04-05T12:11:44.370 回答
0

j确实是escape_javascript根据文档的简写:http: //api.rubyonrails.org/classes/ActionView/Helpers/JavaScriptHelper.html#method-ij

我一直在使用它并且它有效。

于 2017-05-06T15:48:06.513 回答