2017-01-22 89 views
0

我想在我的視圖中多次添加一個帶有不同參數的部分。 我有一個搜索表單,返回一個項目JSON與AJAX。 現在我想調用一個項目來獲取jquery功能並在視圖中顯示它。rails:使用jquery foreach渲染部分

$.ajax({ 
    type:"GET", 
    url:"mycontroller/projects", 
    //dataType:"json", 
    data: { project: project, user: user,periode: periode }, 
    success:function(result) { 
     if(result.length == 0) { 
     $("#notice").show().fadeOut(5000) 
     } else { 
     $.each(result, function(i, item) { 
      $("#res").append(**mypartial**) 
     }); 
    } 
    } 
}); 

和我的一個部分會做這樣的事情:

 
Poject : %= preject.name % 
users: 
% project.users.each do |user| % 
- %= user.name % 
%end% 

有辦法做到這一點嗎?

回答

0

您可以在跳過此AJAX調用的.html.erb模板底部的<script></script>標記內包含該AJAX腳本。

例如:如果你的視圖文件製作是AJAX調用index.html.erb

<!– ... other tags in index.html.erb –> 

<script> 
    $.ajax({ 
    type:"GET", 
    url:"mycontroller/projects", 
    //dataType:"json", 
    data: { project: project, user: user,periode: periode }, 
    success:function(result) { 
     if(result.length == 0) { 
      $("#notice").show().fadeOut(5000) 
     } else { 
      $.each(result, function(i, item) { 
      $("#res").append("<%= render partial: 'path_to_partial' %>") 
     }); 
     } 
    } 
    }); 
</script> 
+0

您的回覆謝謝sa77。但我怎樣才能發送params項目的部分? – Delmed

+0

你可以通過它作爲當地人,就像你在你的常規視圖文件 – sa77

+0

這就是我所做的:

 $("#res").append("<%= render partial: 'stat', locals: {test: result} %>") 
但在視圖中我有<%= render partial:'stat',locals:{test:result} %>寫! – Delmed