我已经完成了所有设置,只需单击一个复选框即可激活一个javascript函数,该函数对映射到控制器#action的路径进行ajax调用。问题在于它没有逃避嵌入式ruby。
这是我的输入标签:
<input id="address_name" type="text" value="sfsfsd" size="30" name="address[name]">
这是我在clone_shipping_address.js
文件中触发的JS:
$("#address_name").val("<%= @shipping_address.name =>");
让我说@ shipping_address.name =“Edmund”。
问题是,当我点击复选框时,文本字段中显示的文字将变为<%= @shipping_address.name =>
(字面意思),而不是Edmund
。有谁知道我做错了什么?
答案 0 :(得分:1)
问题:您的文件扩展名为“.js”,这意味着此文件应该只使用Javascript。
解决方案:您可以将Ruby代码与ERB / HAML一起使用。根据您使用的文件,使用相应的扩展名重命名文件clone_shipping_address.js
,以便在此文件中执行ruby代码:
clone_shipping_address.js
# should become
clone_shipping_address.js.erb
# or if using HAML
clone_shipping_address.js.haml