2012-05-29 43 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() 
相关问题