【问题标题】:Getting xml:id attribute using XML object使用 XML 对象获取 xml:id 属性
【发布时间】:2011-12-03 18:02:30
【问题描述】:

我正在使用 Rhino 1.7R3 处理 XML,但无法访问 xml:id 属性。

var bond = new XML('<person xml:id="007" profession="agent">James Bond</person>');
print(bond); // "James Bond"
print(bond.@profession); // "agent"
print(bond.@xml:id); // ERROR: missing ) after argument list

我尝试将xml:id 放在引号和方括号内,但并没有解决问题。有什么办法吗?


编辑:我通过定义命名空间让它工作。之后,Siva 建议的两种方法都有效:

var xml = new Namespace("xml", "http://www.w3.org/XML/1998/namespace");
var bond = new XML('<person xml:id="007" profession="agent">James Bond</person>');
print(bond); // "James Bond"
print(bond.@profession); // "agent"
print(bond.@xml::id); // "007"
print(bond..@xml::id); // "007"

【问题讨论】:

    标签: javascript xml rhino e4x


    【解决方案1】:

    试试这个方法

    print(bond.@xml::id);
    

    print(bond..@xml::id);
    

    【讨论】:

    • 如果你想知道这里发生了什么,那就是你在预定义的xml namespace 中匹配一个id 属性,它总是w3.org/XML/1998/namespace 并且必须总是有前缀xml。您可以使用prefix = "uri"var prefix = new Namespace('uri') 声明其他命名空间,然后匹配prefix::
    • Siva 和弗朗西斯,我通过结合您的建议得到了它。谢谢。
    猜你喜欢
    • 2019-03-24
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    • 2014-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多