我需要相同的ID。
<span id='name'>Something</span>
<span id='name'>Something</span>
<span id='name'>Something</span>
<span id='name'>Something</span>
<span id='name'>Something</span>
............. 并添加到数组:
<span id='name[1]'>Something</span>
<span id='name[2]'>Something</span>
<span id='name[3]'>Something</span>
<span id='name[4]'>Something</span>
<span id='name[5]'>Something</span>
...... 请帮帮我...谢谢
答案 0 :(得分:1)
将您的HTML更改为<span class="name">
并使用此jQuery代码:
$(document).ready(function() {
$('.name').each(function(index) {
$(this).attr('id', 'name['+index+']');
});
});
如果您使用#name
,$('#name').each()
会在第一个元素之后停止,因为ID应该始终是唯一的。
答案 1 :(得分:0)
元素的id必须是唯一的。获取相同id的元素使用此方法
var all_elem = document.getElementsByTagName("*");
var same_id = array();
var index = 0;
for(var i = 0; i < all_elem.length;i++) {
if(all_elem[i].id=="name") {
same_id[index++] = all_elem[i];
}
}
答案 2 :(得分:0)
$('span#name').each(function(i){
this.id += '[' + i + ']';
})
但如果可能,因为我确信你知道因为这个问题,你应该将你的id更改为class,然后单独设置id。
此外,我不知道[
和]
在ID中有效。如果可能,您应该使用name-1
。