Javascript:制作元素列表的最简单方法

时间:2012-11-27 02:25:21

标签: javascript jquery

我有一个div和一个包含一些项目的列表:

<div id="myDiv">
<ul>
    <li><a>Item 1</a></li>
    <li><a>Item 2</a></li>
    <li><a>Item 3</a></li>
</ul>

我怎样才能轻松制作一个&#39; a&#39;的Javascript数组?知道项目数量可能会发生变化的元素?

3 个答案:

答案 0 :(得分:3)

如果你想要一个静态列表:

var mylist = $('#myDiv > ul > li > a').toArray();

但你写了“......知道项目数量可能会改变”。如果这意味着您需要一个随DOM更新而更新的“实时列表”,请执行以下操作:

var mylivelist = document.getElementById("myDiv")
                         .getElementsByTagName("a");

此列表将在添加或删除项目时更新。它假设<a>中没有其他<div>个元素。如果有,你需要调整。

答案 1 :(得分:0)

如果你使用jQuery那么它是

$('#myDiv a')

如果没有jQuery那么就是这个

document.getElementById('myDiv').getElementsByTagName('a')

答案 2 :(得分:0)

在普通的旧javascript中(不需要jQuery):

    var myDiv = document.getElementById('myDiv');
    var allAnchors = myDiv.getElementsByTagName('a');
    for (var i = 0; i < allAnchors.length; i++) {
        //do something with each allAnchors[i] node
        document.write(allAnchors[i].innerHTML + '<br />');
    }