Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JavaScript中解析XML时读取属性_Javascript_Xml_Windows 8_Microsoft Metro_Winjs - Fatal编程技术网

在JavaScript中解析XML时读取属性

在JavaScript中解析XML时读取属性,javascript,xml,windows-8,microsoft-metro,winjs,Javascript,Xml,Windows 8,Microsoft Metro,Winjs,我有以下XML: <item> <media:content url="..." height="130" width="130" type="image/jpeg" /> <media:credit role="provider"></media:credit> <media:text type="html"></media:text> <tit

我有以下XML:

    <item>
        <media:content url="..." height="130" width="130" type="image/jpeg" />
        <media:credit role="provider"></media:credit>
        <media:text type="html"></media:text>
        <title></title>
        <link></link>
        <description></description>
        <pubDate></pubDate>
        <category></category>
        <guid isPermaLink="false"></guid>
    </item>
以及以下代码:

WinJS.xhr({ url: ... }).then(function (rss) {
    var items = rss.responseXML.querySelectorAll("item");

    for (var n = 0; n < items.length; n++) {
        var article = {};
        article.title = items[n].querySelector("title").textContent;
        var thumbs = items[n].querySelectorAll("media");
        article.content = items[n].querySelector("text").textContent;
        article.description = items[n].querySelector("description").textContent;
        if (thumbs.length > 1) {
            article.thumbnail = thumbs[0].attributes.getNamedItem("content");
        }
        else {
            var firstindex = article.content.indexOf("<img");
            if (firstindex !== -1) {
                var secondindex = article.content.indexOf("src=", firstindex) + 5;
                var thirdindex = article.content.indexOf("\"", secondindex);
                article.thumbnail = article.content.slice(secondindex, thirdindex);
            }
        }

        if (article.thumbnail) {
            list.push({ group: BasketballGroups[0], title: article.title, description: article.description, content: article.content, backgroundImage: article.thumbnail });
        }
    }
});
我在以下行中不断遇到错误:article.content=items[n]。querySelectortext.textContent;->JavaScript运行时错误:无法获取未定义或空引用的属性“textContent”

这是一个Windows8JavaScript应用程序

我做错了什么?是否有其他方法可以从中选择文本元素?

这意味着您的一个节点中没有节点。我如何选择元素?document.querySelectormedia\\:text maybe?PS:应该在我以前的注释中。现在我得到JavaScript运行时错误:无法在以下行获取未定义或空引用的属性“textContent”:article.content=items[n]。querySelectormedia\\\:text.textContent;双重检查,媒体\\:文本也不起作用。