1

我有以下 XML 需要能够从中提取特定字段:

<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices">
<id>Cases</id>
<title type="text">CaseList</title>
<updated>2013-04-04T15:32:56Z</updated>
<author>
<name/>
</author>
<link href="CaseList" rel="self" title="CaseList"/>
<entry>
    <id>291</id>
    <title type="text">CaseList('291')</title>
    <updated>2013-04-04T15:32:56Z</updated>
    <category term="S.Cases" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/>
        <content type="application/xml">
            <m:properties>
                <d:case_id>291</d:case_id>
                <d:case_title>Global Case</d:case_title>
                <d:case_type>Meso</d:case_type>
        </m:properties>
    </content>
</entry>
<entry>
    <id>291</id>
    <title type="text">CaseList('292')</title>
    <updated>2013-04-04T15:38:56Z</updated>
    <category term="S.Cases" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/>
        <content type="application/xml">
            <m:properties>
                <d:case_id>292</d:case_id>
                <d:case_title>Global Case 2</d:case_title>
                <d:case_type>Meso 2</d:case_type>
        </m:properties>
    </content>
</entry>
</feed>

我几乎尝试了所有方法,但我觉得我缺少一个核心 XML 概念,它可以帮助我提取节点,例如 d:case_id。有没有一种使用 Javascript 拉出一个或多个节点的简单方法?其他命名空间问题不包括另一个命名空间中的命名空间......在这里,我感兴趣的值在 m:properties 后面。

4

1 回答 1

1

我用过这个

parentNode.getElementsByTagNameNS("*", "name");

它在 chrome 和 IE10 浏览器中对我来说效果很好。

请点击以下链接了解详情:

使用命名空间解析 jQuery XML

于 2013-04-23T09:18:09.900 回答