如何使用jQuery对具有名称空间的XML进行解析 [英] How to use jQuery for XML parsing with namespaces
本文介绍了如何使用jQuery对具有名称空间的XML进行解析的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我是jQuery的新手,想解析XML文档.
I'm new to jQuery and would like to parse an XML document.
我可以使用默认名称空间解析常规XML,但可以使用XML进行解析,例如:
I'm able to parse regular XML with the default namespaces but with XML such as:
<xml xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema">
<s:Schema id="RowsetSchema">
<s:ElementType name="row" content="eltOnly" rs:CommandTimeout="30">
<s:AttributeType name="ows_ID" rs:name="ID" rs:number="1">
<s:datatype dt:type="i4" dt:maxLength="4" />
</s:AttributeType>
<s:AttributeType name="ows_DocIcon" rs:name="Type" rs:number="2">
<s:datatype dt:type="string" dt:maxLength="512" />
</s:AttributeType>
<s:AttributeType name="ows_LinkTitle" rs:name="Title" rs:number="3">
<s:datatype dt:type="string" dt:maxLength="512" />
</s:AttributeType>
<s:AttributeType name="ows_ServiceCategory" rs:name="Service Category" rs:number="4">
<s:datatype dt:type="string" dt:maxLength="512" />
</s:AttributeType>
</s:ElementType>
</s:Schema>
<rs:data>
<z:row ows_ID="2" ows_LinkTitle="Sample Data 1" />
<z:row ows_ID="3" ows_LinkTitle="Sample Data 2" />
<z:row ows_ID="4" ows_LinkTitle="Sample Data 3" />
</rs:data>
</xml>
我真正想要的只是<z:row>
.
到目前为止,我一直在使用:
So far, I've been using:
$.get(xmlPath, {}, function(xml) {
$("rs:data", xml).find("z:row").each(function(i) {
alert("found zrow");
});
}, "xml");
真的没有运气.有什么想法吗?
with really no luck. Any ideas?
推荐答案
我明白了.
事实证明,它需要\\
才能逃脱冒号.
Turns out that it requires \\
to escape the colon.
$.get(xmlPath, {}, function(xml) {
$("rs\\:data", xml).find("z\\:row").each(function(i) {
alert("found zrow");
});
}, "xml");
正如Rich所指出的:
As Rich pointed out:
更好的解决方案不需要转义,并且可以在所有现代"浏览器上使用:
The better solution does not require escaping and works on all "modern" browsers:
.find("[nodeName=z:row]")
这篇关于如何使用jQuery对具有名称空间的XML进行解析的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文