jQuery:删除后枚举元素

时间:2014-03-11 18:41:05

标签: jquery each

以下是我的网页的简化版本:

HTML

<div id="id-0" class="item">x</div>
<div id="id-1" class="item">x</div>
<div id="id-2" class="item">x</div>

脚本

$('.item').click(function() {
    $(this).remove();
    $('.item').each(function(index) {
        $(this).attr('id', 'new_id-' + index);
    }
});

当我点击id=1元素时,它被删除了,这就是我在firebug中看到的内容:

<div id="new_id-0" class="item">x</div>
<div id="new_id-2" class="item">x</div>

但我需要按顺序排列数字。为什么计算已删除的项目以及如何解决此问题?

1 个答案:

答案 0 :(得分:0)

在我看来,你的语法有错误。您没有关闭jQuery(".item").each();

的括号
$('.item').click(function() {
    $(this).remove();
    $('.item').each(function(index) {
        $(this).attr('id', 'new_id-' + index);
    });
});

这是jsfiddle - 它可以很好地重新计算