[英]Passing local to partial rails
我不知道发生了什么事。 我只想通过ajax呈现一个编辑表单,将局部传递给局部。 我的代码如下
在我的licencias_controller中调用编辑动作
<td><%= link_to '<i class="icon-pencil icon-black"></i>'.html_safe, edit_licencia_path(licencia), :remote => true %></td>
这是我在licencias_controller中的代码
def edit
@licencia = Licencia.find(params[:id])
respond_to do |format|
format.js {}
end
end
这是我在edit.js.erb中的代码
$(document).ready(function(){
$('#modContLicencia').replaceWith('<%= escape_javascript(render(:partial => 'edit', :locals => {:licencia => @licencia})) %>');
$('#modLicencia').modal('show');
});
所以我想要的是在_edit部分中显示@licencia数据。 第一次单击以查看其渲染正常,但是如果我单击索引中的另一个@licencia对象,则部分渲染相同的@licencia对象。因此当我单击另一次对其进行编辑时,@ licencia对象不会被更新。 我在做什么错?
您使用引号可能会导致您遇到此问题。 您的edit
将在replaceWith
行中视为一个变量。 您想使用\\'
转义包裹您的部分edit
的引号,或者改用以下内容:
$('#modContLicencia').replaceWith("<%= escape_javascript(render(:partial => 'edit', :locals => {:licencia => @licencia})) %>");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.