抛出新错误(“语法错误,无法识别的表达式:”msg);

时间:2012-12-27 06:05:52

标签: javascript jquery ruby-on-rails ruby-on-rails-3

请帮助我找到问题

  

错误:语法错误,无法识别的表达式:#save_property _#{result.id}          抛出新错误(“语法错误,无法识别的表达式:”msg);

home.js:

$(".save_prop").click(function(){
    $('#save_property_#{result.id}').slideToggle();
    return false;
});

view.html.erb

<div id="save_property_<%= result.id %>" style="background : #ececef; width :500px; height:100px; display:none;">
<% if (user_signed_in? || current_twitter_user || current_fb_user) %>
    property saved
<% else %>
    <%= link_to "Sign in  /", user_session_path %>
    <%= link_to "Sign Up", new_user_registration_path %>
    to save the property
<% end %>
</div>

3 个答案:

答案 0 :(得分:0)

替换

$('#save_property_#{result.id}').slideToggle();

$('#save_property_<%=result.id%>').slideToggle();

并将您的文件名从home.js更改为home.js.erb

答案 1 :(得分:0)

密钥位于您的文件名称中 - home.js 它不是erb或任何其他rails模板文件。它是一个独立的JavaScript文件,它不知道rails语法或任何或您的后端对象。它在客户端编译,服务器“按原样”将其提供给浏览器

您必须将该脚本放在erb文件中才能正常工作。

答案 2 :(得分:-1)

 $('#save_property_result.id').slideToggle();

这有助于我解决问题