我正在尝试在js文件中渲染部分内容并将其附加到我的html上的javascript事件(单击)。我尝试按照此操作并使用escape_javascript方法:guide 但不幸的是它不起作用。 这是我的js文件:
$(document).ready(function(){
$("#add_resident").click(function(){
$(".resident").append('<%= escape_javascript(render partial: "resident_form") %>');
})
})
这是我的偏爱:
<%= label_tag "first name" %>
<%= text_field_tag "resident[:first_name]" %>
<%= label_tag "last name"%>
<%= text_field_tag "resident[last_name]" %>
<%= label_tag "birthdate"%>
<%= text_field_tag "resident[birthdate]" %>
javascript实际上是在.click事件上触发的,但它正在渲染&lt;%= escape_javascript(渲染部分:&#34; resident_form&#34;)%&gt;作为一个字符串。解决这个问题的正确方法是什么。
答案 0 :(得分:0)
嘿,你的代码应该是:
$(document).ready(function(){})
就是这样,不需要这个代码{{1}},因为当服务器返回此javascript时,您的视图已经准备好了!
答案 1 :(得分:0)
在JS渲染中尝试这个。
$(".resident").append('<%= escape_javascript(render partial: "resident_form").html_safe %>');