【问题标题】:Handling xml namespaces in jQuery在 jQuery 中处理 xml 命名空间
【发布时间】:2011-07-07 16:37:23
【问题描述】:

我必须解析一个包含一系列命名空间的 xml 流,如下所示:

<zs:searchRetrieveResponse xmlns="http://www.directoryofchoice.co.uk"
xmlns:zs="http://www.loc.gov/zing/srw/" xmlns:diag="http://www.loc.gov/zing/srw/diagnostic/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.directoryofchoice.co.uk schema/content_node.xsd"
xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/"
xmlns:lom="http://ltsc.ieee.org/xsd/LOM">
<zs:version>1.1</zs:version>
<zs:numberOfRecords>1066</zs:numberOfRecords>
<zs:records>
    <zs:record>
        <zs:recordSchema>info:srw/schema/1/dc-v1.1</zs:recordSchema>
        <zs:recordPacking>xml</zs:recordPacking>
        <zs:recordData>
            <srw_dc:dc xmlns:srw_dc="info:srw/schema/1/dc-schema">
                <dc:title>Mathematics subject leader development materials: Summer

显然,这只是代码的一部分。关键是我已经阅读了许多方法(使用 dc\:title、使用 "[nodeName=dc:title]" 以及这些方法的变体,但它们都根本起作用。我已经通过像上面那样采用xml流并将所有“:”更改为“-”来证明这一点。然后它解析得很好。是jQuery(我使用的是1.5.1)真的无法处理 xml 命名空间?考虑到现在命名空间的普遍性,这似乎是一个惊人的缺陷。我不想学习另一个 JavaScript 工具包,但是还有另一个可以处理命名空间的工具包吗?

伊恩。

【问题讨论】:

    标签: jquery xml parsing namespaces


    【解决方案1】:

    您必须双重转义冒号 ( dc\\:title ) 和/或查看这篇文章 (和 cmets) 以获得一些指示: http://www.xml.com/pub/a/2007/10/10/jquery-and-xml.html?page=2

    【讨论】:

    • 感谢您的回复。我实际上已经对冒号进行了双重转义(其中一个转义被消息编辑器吃掉了!)但它仍然没有用。我最终通过回到 jQuery 的早期版本 (1.3.1) 使事情正常进行。奇怪的是它在以后的版本中停止工作。
    猜你喜欢
    • 2014-05-31
    • 2013-04-11
    • 2011-09-05
    • 2012-07-15
    • 2011-05-14
    • 1970-01-01
    • 2012-07-01
    • 2016-11-25
    • 1970-01-01
    相关资源
    最近更新 更多