Javascript 如何将rails变量放入onclick函数调用中
你好,我有以下信息:Javascript 如何将rails变量放入onclick函数调用中,javascript,ruby-on-rails,haml,Javascript,Ruby On Rails,Haml,你好,我有以下信息: = link_to @place.name, '#', onclick: 'get_maps(#{@location_string});' 我目前正在尝试使用rails变量参数链接到javascript调用,但由于某些原因,rails变量@location\u string没有被传递到包含该变量的javascript调用。当前它被呈现为字符串: <a href="#" onclick="get_maps(#{@location_string});">3308
= link_to @place.name, '#', onclick: 'get_maps(#{@location_string});'
我目前正在尝试使用rails变量参数链接到javascript调用,但由于某些原因,rails变量@location\u string
没有被传递到包含该变量的javascript调用。当前它被呈现为字符串:
<a href="#" onclick="get_maps(#{@location_string});">3308 Kanaina Ave</a>
有没有关于如何解决这个问题的想法?单引号内的#{}
语法不起作用。你想要
"get_maps('#{@location_string}');"
你需要把:
= link_to @place.name, '#', :onclick => "get_maps('#{@location_string}');"
onclick是link_to的一个参数。get_映射中的参数应位于“”中 人们说使用内联JS,比如onclick=''、onmouseover等是不好的。您可以使用jquery click()函数通过link的data attr传递ruby变量,并附加事件我认为这不是问题所在。我更改了它,
get\u maps
似乎没有启动。我知道get_maps
是有效的,因为当我点击onclick时:“get_maps(“旧金山”);”代码>它做了正确的事情。啊,我认为你需要在{@location\u string}
周围加上单引号,才能让代码正常工作。改变,我会给你信用:)完成。假设您的@location\u字符串已经有引号。