SyntaxError:由ruby生成的html中的意外标记为true

时间:2016-01-16 15:42:45

标签: javascript jquery ruby-on-rails ruby

为什么我收到此错误:语法错误:意外的标记为真在行

{{1}}

我使用

生成这个
{{1}}

2 个答案:

答案 0 :(得分:2)

因为"字符未正确转义

"<a data-remote="true" rel="nofollow" data-method="delete" href="/clots/test/unjoin"><i class='icon-check clot-unfollow-icon'></i></a>)"

VS

"<a data-remote=\"true\" rel=\"nofollow\" data-method=\"delete\" href=\"/clots/test/unjoin\"><i class='icon-check clot-unfollow-icon'></i></a>)"

注意两个示例中的颜色为true。第一个例子就像用这种方式声明一个变量:

var a = "something is "true;

答案 1 :(得分:2)

$("#atp_<%=@atp.id %>").append("<%= escape_javascript(link_to unjoin_atp_path(@atp), :method => :delete, remote: true do %><i class='icon-check clot-unfollow-icon'></i><% end %>)");

escape_javascript用于转义要在页面中替换的rails helper方法。

您可以将link_to标记移动到部分文件以使其清晰,并且可以在js.erb文件中调用部分名称。

$("#atp_<%=@atp.id %>").append("<%= escape_javascript(render(:partial => 'partial_name') ) %>");