如何将rails变量转换为onclick函数调用

时间:2012-11-03 19:00:39

标签: javascript ruby-on-rails haml

您好我有以下内容:

 = link_to @place.name, '#', onclick: 'get_maps(#{@location_string});'

我目前正在尝试使用rails variable参数链接到javascript调用,但由于某种原因,rails变量@location_string没有被传递给带有变量的javascript调用。目前它正在呈现为字符串:

<a href="#" onclick="get_maps(#{@location_string});">3308 Kanaina Ave</a>

关于如何解决这个问题的任何想法?

3 个答案:

答案 0 :(得分:3)

#{}语法在单引号内不起作用。你想要

"get_maps('#{@location_string}');"

答案 1 :(得分:3)

你需要把:

= link_to @place.name, '#', :onclick => "get_maps('#{@location_string}');"

onclick是link_to的参数 get_maps中的参数应该在''里面。

答案 2 :(得分:1)

人们说使用内联JS,例如onclick ='',onmouseover等是不好的。您可以通过链接的数据attr传递ruby变量,并使用jquery click()函数

附加事件