jQuery XML解析,两个不同的节点,同名

时间:2014-01-17 12:52:07

标签: javascript jquery xml

我使用jQuery解析XMl文件。

XML文件包含以下内容:

<item>
<title> Hello! </title>
<media:title> Hello! </media:title>
</item>

我想解析title内的内容,以及我何时使用

var parsedTitle = $item.find("title"); 
console.log(parsedTitle.text()); //output: Hello!Hello!

输出将被复制,因为有两个具有相同名称的节点。

如何选择其中一个?让我们说我只想解析名称空间的标题

1 个答案:

答案 0 :(得分:0)

var parsedTitle = $item.find("title").filter(function () {
    return this.namespaceURI === "http://the/media/namespace/uri/";
});

您还可以扩展jQuery以支持选择器中的命名空间:

$.expr[':'].ns = function (obj, index, meta, stack) {
    return obj.namespaceURI === meta[3];
};

以后

var parsedTitle = $item.find("title:ns(http://the/media/namespace/uri/)");