在具有相同ID并添加编号的div上进行迭代



我试图用id"slide"迭代每个div,并在末尾添加一个数字(例如slide1、slide2等)

我已经能够在每个div中添加一系列类,但我只能获得相同的代码来重命名第一张幻灯片,而不能重命名其余的幻灯片。

$(document).ready(function() {
 $("#slide").each(function(i) {
    $(this).attr('id', "slide" + (i + 1));
 });
});​

还有jsfiddlehttp://jsfiddle.net/YsvCe/1/

提前感谢

对于多个元素,应该使用类而不是id。

<div class="slide">hello</div>
...
$(document).ready(function() {
    $(".slide").each(function(i) {
        $(this).attr('id', "slide" + (i + 1));
    });
});​

示例:http://jsfiddle.net/QaB76/

ID属性必须是唯一的,id选择器应为唯一的,只返回第一个匹配的元素:

$(document).ready(function() { 
    $("div[id^='slid']").attr('id', function(i) {
       return "slide" + ++i;
    });
});

演示

元素必须具有唯一的ID。each函数不会在其他div上迭代。所以,在不违反规则的情况下,找到一种方法来选择它们。以下工作:

$("div").each(function(i)

最新更新