Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/54.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将rails变量放入onclick函数调用中_Javascript_Ruby On Rails_Haml - Fatal编程技术网

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字符串已经有引号。