我有问题替换表的一行。我试图删除该行然后通过部分轨道附加到表的新行。附加新行,但不会删除旧行。如果没有添加另一行,我可以删除该项,但我相信当函数链接在一起时,它们按照它们所附加的顺序发生。原始行和替换具有相同的ID,这是我认为的导致问题,但是在另一个被附加之前应该删除一个我确实认为会有问题。
$('#userList')
.remove('#user_<%= @new_user.id %>')
.append("<%=j render :partial=> 'user', :locals => {:user => @new_user, :current_user => @user} %>");
答案 0 :(得分:1)
jQuery试图从SINGLE匹配元素#userList的集合中删除#user_ *。你只需要做
$('#user_<%= @new_user.id %>').remove();
小提琴示例: http://jsfiddle.net/KMzCg/
答案 1 :(得分:0)
您要删除的元素是#userlist
的子元素,而不是兄弟元素。你将不得不导航到它。
$('#userList').find('#user_<%= @new_user.id %>').remove()
.end().append("<%=j render :partial=> 'user', :locals => {:user => @new_user, :current_user => @user} %>");
但直接选择它会更有意义。
$('#user_<%= @new_user.id %>').remove();
$('#userList').append("<%=j render :partial=> 'user', :locals => {:user => @new_user, :current_user => @user} %>");