如何遍历UL标记的所有实例并使用Javascript为其分配ID

时间:2012-12-15 22:48:50

标签: javascript loops

我有一个包含动态生成内容的页面,如下所示:

<ul class="alist">
  <li>something</li>
  <li>something</li>
</ul

<ul class="alist">
  <li>something</li>
  <li>something</li>
</ul>

<ul class="alist">
  <li>something</li>
  <li>something</li>
</ul>

请注意,所有无序列表都没有任何id或唯一的类标识符。

我需要为每个ul分配一个id,但每次都要分配一个id,我不知道在任何给定时间页面上会有多少无序列表。

我想为每个无序列表分配一个数字作为id。因此,应该为第一个ul分配ID为1.第二个无序列表应该被分配ID为2,依此类推,因为页面上可能会出现许多无序列表......我甚至都没有线索从哪里开始。

1 个答案:

答案 0 :(得分:3)

document.getElementsByTagName是你最好的朋友。应用一些魔法,它可能看起来像

var idcounter = 1;
[].forEach.call( document.getElementsByTagName( 'ul' ), function( ul ) {
    ul.id = 'myID-' + idcounter++;
});

演示http://jsfiddle.net/xgkMx/