2010-08-09 32 views
1

时间渲染:部分在escape_javascript渲染:局部产生只有一个escape_javascript

<script type="text/javascript" charset="utf-8"> 
    $(document).ready(function(){ 
     $("#addPerson").click(function(){ 
      $("#user tr:last ").after("<%= escape_javascript(render :partial => 'user_item', :locals =>{:user_item => User.new}) %>"); 
        return false; 
     }); 

    }); 
</script> 

生成一次,并且我已经在user_item部分文件检查OBJECT_ID它显示相同的object_id直到节约并只保存最后一个项目。

<%= user_item.object_id %> 

这每一次的结果

12354 

。 请帮我解决这个问题。

回答

1

这是因为局部只渲染一次。

HTML文件只生成一次。当你调用这个Javascript函数时,它不会调用partial,因为它已经生成。

如果你想要每一次新一代。您需要使用user_id进行服务器调用,然后获取HTML。

+0

你可以发表一些例子代码为服务器call.thanks ur响应 – chandramouli 2010-08-09 07:17:49