我有一个通过调用部分渲染的项目列表
render @items
每个项目都放在一个 div 中,并有一个 JS '禁用'链接
<div id="item_id_<%=item.id%>
<%=item.name>
<%= link_to disable_item_path(item), :remote => true %>
</div>
在控制器内部,我将数据库中项目的标志更改为 False,并希望重新渲染页面并从列表中删除该项目。
我一直在通过 disable.js.coffee 中的以下代码这样做
$('#items_list').html("<%= escape_javascript(render(:partial => @items)) %>")
我的问题:我只想隐藏特定项目 DIV,而不是重新呈现页面上的所有项目(为什么?因为我认为它是更好的编码)。
我怎么做?我尝试将@item_id 传递给coffeescript,并执行类似的操作
$('item_id'+@item_id).hide
但是从这里的阅读来看,这似乎是错误的做法。
谢谢!