繁体   English   中英

通过局部到局部轨道

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM