从无序的html列表中的列表元素中获取属性或内容

时间:2016-03-07 10:48:03

标签: javascript jquery html list

我有一个隐藏的无序列表,其中包含许多用于保存某些信息的列表元素。通过JavaScript或jQuery我想获得每个列表元素的信息,但我似乎无法让它正常工作。 列表元素以字符串的形式保存信息(例如' text_1,2'),但如果它的id,文本或其他内容无关紧要,只要信息与特定元素绑定。 这是我迄今为止尝试过的一个例子:

    var ul = document.getElementById('coordinateList');
    for (var i = 0; i < ul.childElementCount; i++) {
        var li_text = ul.children[i].textContent;
        var column = +li_text.split("_")[1].split(",")[1];
    } 

基本上我有一堆列表元素,其中包含text_numberX,numberY格式的一些信息,在这种特殊情况下,我想从所有列表元素中提取numberY
这是我的无序列表:

<ul id="coordinateList" style="visibility:hidden;height:0;overflow:hidden"></ul>  

列表元素的加载方式如下:

public getGridCoordinates(){
    var table: string;
    $.ajax({
        url: '...',
        async: false,
        success: function (data) {
            table = data;
        }
    });
    var ul = document.getElementById('coordinateList');
    for (var i = 0; i < 6; i++) {
        var li = document.createElement('li');
        li.id = table.split(";")[i];          // this?
        li.textContent = table.split(";")[i]; // or this?
        ul.appendChild(li);
    }
}  

值6只是一个例子 - 它实际上是一个动态值。 不要担心如何提取每个列表元素,只需注意每个列表元素都具有上述格式。

我使用DOM资源管理器检查了html列表,列表元素似乎保留了正确的数据。 getGridCoordinates中的console.log也返回正确的数据 所以我在加载数据时没有问题,但稍后从JavaScript中提取它是令我不安的问题;更具体地说,是var li_text = ul.children[i].textContent;行。

以下是我的ajax请求收到的一些数据示例:
&#39; text1_1,1; text2_1,3; text3_2,2; text4_2,1; text5_1,2; text6_2,3&#39;

0 个答案:

没有答案