通过Jquery设置ID属性

时间:2014-10-13 08:48:12

标签: javascript jquery html

我尝试在div中为图像元素设置id。

<div id = 'div_content'>
   <img src ='img1.png'>
   <img src ='img2.png'>
</div>

脚本:

var items = document.querySelectorAll('#div_content img');
for (var i = 0, l = items.length; i < l; i++) {
   items[i].attr("id","id"+i);
};

但这是错的。 enter image description here

2 个答案:

答案 0 :(得分:5)

&#13;
&#13;
$('#div_content img').each(function (index) {
   $(this).attr("id","id" + index);
});
alert($("#div_content").html());
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id = 'div_content'>
   <img src ='img1.png'>
   <img src ='img2.png'>
</div>
&#13;
&#13;
&#13;

不要使用querySelectorAll,因为你已经使用过jQuery。

$('#div_content img').each(function (index) {
   $(this).attr("id","id" + index);
});

document.querySelectorAll将返回DOMElement个不具备attr方法的数组。

答案 1 :(得分:4)

不要使用jQuery,只需直接设置属性即可。代码更短,效率也更高!:

items[i].id = 'id' + i;

注意:items[i]只是一个DOM元素,您必须编写$(items[i])以使用.attr方法将其转换为jQuery对象。