无法从responseXML中检索nodeValue但可以获取nodeName?

时间:2013-09-05 06:33:41

标签: javascript xml ajax

我有XMLHttpRequest我收到了XML响应。

我正在尝试使用responseXML函数从结果中获取特定值,然后访问我想要的节点。以下是我的代码..

xmlDoc = request.responseXML;
result = xmlDoc.getElementsByTagName("result")[0].childNodes[0].nodeValue;
console.log("Result: "+result);

现在输出null。但是,当我为nodeValue更改nodeName时,它会输出我想要的节点的名称。我可以看到xml,这是它收到的结构。

<result mime="text/xml">
    <int>1</int>
</result>

为了说清楚,当我使用nodeValue时,我会变为空,但当我nodeName时,它会输出int

我的问题

如何检索int标记中的值?

2 个答案:

答案 0 :(得分:2)

尝试:

result = xmlDoc.getElementsByTagName('int')[0].firstChild.nodeValue;

答案 1 :(得分:0)

  

获取元素的值在DOM中,一切都是节点。元素节点没有文本值。

     

元素节点的文本存储在子节点中。这个节点是   称为文本节点。

     

获取元素文本的方法是获取子元素的值   节点(文本节点)。

W3Schools

int节点是一个元素节点。正如文章所说,你正在寻找的文本值实际上属于孩子。