2012-01-07 8 views
0

ビュー内にJavaScriptを入れる必要があります。基本的に私はRecurly.jsライブラリを使って遊んでいます。ここでJavascriptの内部をレールで表示3

は、例の形である:ファイル名_recurly.js.erb

<%= render :partial => 'recurly.js', :locals => { :company => @company } %> 

しかし、そのだけのページへJSを出力:http://pastie.org/3142536

私は部分的にJSを追加しようとしています。

JSを出力するためにvarsを渡すより良い方法がありますか?どのようにJSをレンダリングすることができますか?

希望することをお勧めします。

<%= raw(render :partial => 'recurly.js', ...) %> 

を通常ERBは、出力をエスケープします:

答えて

0

は、あなたがしようとしています。しかし、たとえそれが動作しても、これが長期的には良い解決策であるかどうかは分かりません。

1

escape_javascript関数を使用する必要があります。

ので、あなたのコードは次のようになります。

<%= escape_javascript(render(:partial => 'recurly.js', :locals => { :company => @company }) %>

0

は、なぜあなたはあなたのERBビューでJavaScriptを含め、通常のように使用しないでください。

<%= javascript_include_tag "filename_from_public_javascripts_folder" %> 
関連する問題