带属性的XML节点值

时间:2017-08-11 12:22:51

标签: javascript xml

我正在尝试使用JavaScript从具有属性的XML节点中检索值。这是一个XML片段。

<p:Header>
    <p:DocID>
        <p:ID>1234</p:ID>
    </p:DocID>
    <p:QualTerm type="SomeType">
        <p:ID schemeName="SomeScheme">5678</p:ID>
    </p:QualTerm>
</p:Header>

这是一个JavaScript代码段。

$.ajax({
    type: "GET",
    url: "http://localhost:8080/rest/getsomedata",
    contentType: "application/x-www-form-urlencoded; charset=UTF-8",
    data: id,
    dataType: "xml",
    cache: false,
    success: [
        function(data, textStatus, jqXHR) {
            var node1 = data.getElementsByTagName("p:Header");
            var id = data.getElementsByTagName("p:ID");

            for (var outerIndex = 0; outerIndex < node1.outerIndex; index ++) {
                for (var innerIndex = 0; innerIndex < id.length; innerIndex ++) {
                    var tag = data.getElementsByTagName("p:ID")[innerIndex];
                    var child = tag.childNodes[innerIndex];
                    var value = child.nodeValue;
                    alert(value);
                }
            }

            $("#footerMessage").find("span").remove();
            $("<span>Success! Data retrieved.</span>").appendTo("#footerMessage");
            console.log("Success! Data requested: " + data);
        }
    ]

我可以检索第一个p:ID节点的值就好了但是第二次通过内部循环我收到了一个&#34; undefined&#34;第二个p:具有属性的ID的值。如何从第二个p:ID节点中提取实际值5678?非常感谢您提供任何帮助。

0 个答案:

没有答案