2012-05-29 77 views
0

我正在嘗試編寫一個coffeescript,將一個新元素添加到content_tag_for塊中。如果可能的話,使用部分代碼來簡化代碼。如何在jQuery中將新的li元素添加到content_tag_for塊中

<ul id="documents"> 
    <% @documents.each do |document| %> 
    <%= content_tag_for :li, document do %> 
      <%= document.title %> 
      <%= document.position %> 
      <%= link_to 'Delete', document, method: :delete, remote: true %> 
    <% end %> 
    <% end %> 
</ul> 

而我的create.js.coffee嘗試。但是使用部分引起的問題是因爲當我運行這個時,元素被添加時沒有包裝,打破了排序和樣式化行爲,直到頁面重新加載。我想使用jQuery異步追加新記錄。

$('<%= escape_javascript(render(:partial => @document))%>') 
    .prependTo('#documents') 
    .hide() 
    .fadeIn() 
$('#new_document')[0].reset() 

回答

0

已解決。 my updated create.js.coffee

$('<%= content_tag_for :li, @document do %> 
      <%= render @document %> 
     <% end %>') 
    .prependTo('#documents') 
    .hide() 
    .fadeIn() 
$('#new_document')[0].reset() 
相關問題