我想给 .content
类的每个元素添加 ID,我希望每个 ID 的整数都增加 1。示例:
<div class="content" id="content_1"></div>
<div class="content" id="content_2"></div>
等我写的代码看起来像这样:
var number = 1;
$(".content").each(function() {
$('.content').attr('id', 'content_' + number);
number++;
});
这段代码将 content_2
添加到它们中,而不是 content_1
和 content_2
,如果我有 3 个元素 .content
类 所有这些都有一个 ID 为 content_3
有什么办法可以解决这个问题吗?
最佳答案
在每个循环中使用this
:
$(".content").each(function(index) {
this.id = 'content_' + index;
});
否则,您将选择具有类 .content
的所有元素
仅 JS 方法:
var content = document.querySelectorAll('.content');
[].forEach.call(content, function(item, index) {
item.id = "content_" + (index+1);
});
ES6/ES2015 语法:
let content = document.querySelectorAll('.content');
[].forEach.call(content, (item, index) => item.id = `content_${(index+1)}`);
关于JavaScript 递增变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18697078/