1

我似乎在 JavaScript 中找不到任何解决方案,因为我不想使用 jQuery。我正在尝试从 xml 文档中获取日期文本。我有以下代码,但我收到无法从未定义中读取长度的错误。我究竟做错了什么?

var request, xmldocument, date, xmlDate;
request = new XMLHttpRequest();
request.open("GET", "http://XXXXX/rss.php", true);
request.onreadystatechange = function() {
    if (request.readyState == 4) {
        // xml document
        xmldocument = request.responseXML;
        // dates from xml document
        date = xmldocument.getElementsByTagName("pubDate");
        // loop over dates
        for (count = 0; count <= date.childNodes.length; count++) {
            // text of date node
            xmlDate = date.childNodes[i].nodeValue;
            // read out text
            console.log(xmlDate);
        }
    }
}
request.send();
4

1 回答 1

1

getElementsByTagName为您提供一个节点列表,而不是一个将结果作为子节点的元素。尝试

    for (count = 0; count < date.length; count++) {
        // text of date node
        xmlDate = date[count].childNodes[0].nodeValue;
        // read out text
        console.log(xmlDate);
    }
于 2012-08-03T01:47:14.167 回答