2

JavaScript関数に入力したいオプションを保持するルビーのハッシュがあります

私のハッシュは(irbで出力されるため)

@options = [{:source=>"2", :tries=>"3"}]

私のJavaScript関数は次のようなオプションを受け入れます

myFunc({source: num, tries: num})

したがって、js.erbファイルで私が行う場合

myFunc(<%=j @options %>)

それは結果として

{:source=&gt;\&quot;2\&quot;, :tries=&gt;\&quot;3\&quot;}

するj @edges.to_jsonことで

 \&quot;{:source=&gt;\\\&quot;2\\\&quot;, :target=&gt;\\\&quot;3\\\&quot;} }\&quot;

するj @edges.to_json.html_safeことで

\"{:source=>\\\"2\\\", :target=>\\\"3\\\"}\"

より JavaScript に適したハッシュを出力する方法はありますか?

4

2 に答える 2

4

使用しないjでください。試す

myFunc(<%= @options.to_json %>)
于 2013-03-19T16:03:33.850 に答える
0

gsubこれらの不要な文字を削除するために使用できます。

@options[0].to_json.gsub(/\"/,'')
# => "{source:2,tries:3}"
于 2013-03-19T16:02:11.830 に答える