LONERさんのブログ
ブログ
js.coffee では無理、js.erb で可能 なぜ?
ある js.erb の中で下のようにして 下の alert "abc" と書かれた js.coffee を呼び出していたとする。このとき、ブラウザには alert("abc") が返される。
<%=render(:partial => 'sample')%>
alert "abc"
js.coffee を js.erb 形式に書き換えて(もちろんファイル名も変えて)同じことをやってみると正しく表示される。
しらべていくうちに、それっぽい書き込みをみつけた。http://stackoverflow.com/questions/2853325/how-can-i-get-rails-to-not-render-escaped-quotes-as-quot
<% content_for :script do %>
$(document).ready ( function() { $.jGrowl("<%= raw(p.message) %>", { sticky: true }) });
<% end %>
調べ疲れたからやってないけど、これでいけるっぽい。
raw でやるやり方も書いてあった。そっちの方が自然な気がするが、そもそもなぜ js.erb と js.coffee で変わってくるんだ?
コメントを書く
コメントを投稿するには、ログイン(無料会員登録)が必要です。