我正在尝试将一些 jQuery + ERB 添加到特定视图:
views/posts/show.html.erb(文件顶部):
<% content_for :javascript do %>
<script type="text/javascript">
$(".post-<%[email protected] /cdn-cgi/l/email-protection%> h3").prepend('<%=escape_javascript @post.votes.count %>');
</script>
<% end %>
<h2>posts show</h2>
(etc...)
<div class="post-<%[email protected] /cdn-cgi/l/email-protection%>">
<h3>votes</h3><br />
<%= link_to "Vote Up", vote_up_path(@post), :remote => true %><br />
</div>
views/layouts/application.html.erb(文件底部):
(etc...)
</div>
<%= yield %>
<%= yield :javascript %>
</body>
</html>
但我收到以下错误:
undefined method `gsub' for 6:Fixnum
Extracted source (around line #3):
1: <% content_for :javascript do %>
2: <script type="text/javascript">
3: $("post-<%[email protected] /cdn-cgi/l/email-protection%>").html('<%=escape_javascript @post.votes.count %>');
4: </script>
5: <% end %>
有什么建议来解决这个问题吗?
escape_javascript http://api.rubyonrails.org/classes/ActionView/Helpers/JavaScriptHelper.html#method-i-escape_javascript calls gsub http://ruby-doc.org/core-1.9.3/String.html#method-i-gsub无论你传递什么,这对于数字来说没有意义。你可以不打电话escape_javascript
或者给它一个字符串:
$("post-<%[email protected] /cdn-cgi/l/email-protection%>").html('<%=escape_javascript @post.votes.count.to_s %>');
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)