1

問題を見つけるのを手伝ってください

エラー: 構文エラー、認識できない式: #save_property_#{result.id} throw new Error( "構文エラー、認識できない式: " msg );

ホーム.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>
4

3 に答える 3

0

キーはファイルの名前にあります -home.js これはerbやその他のRailsテンプレートファイルではありません。これはスタンドアロンの JavaScript ファイルであり、Rails 構文やバックエンド オブジェクトを認識しません。クライアント側でコンパイルされ、サーバーはそれを「そのまま」ブラウザに渡します

そのように機能させるには、そのスクリプトをerbファイル内に配置する必要があります。

于 2012-12-27T07:33:56.110 に答える
0

交換

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

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

ファイル名をhome.jsからhome.js.erbに変更します

于 2012-12-27T06:10:06.070 に答える
-1
 $('#save_property_result.id').slideToggle();

これは私が問題を解決するのに役立ちました

于 2013-03-05T03:59:27.753 に答える