通过JavaScript解析XML并获取节点值

时间:2015-05-15 11:51:41

标签: javascript

我的代码就像这样

   var tariffdate = PriceSheet.children('TariffEffDate')[1].text;

我期望在TariffEffDate标记内获取数据。但它反而给了我undefined

我可以获取代码

的结果<TariffEffDate>1999-01-01T00:00:00</TariffEffDate>
  console.log(PriceSheet.children('TariffEffDate')[1])

但是当我添加.text来获取此节点内的数据时,它会给我undefined。 谁能指出我在这里做错了什么?

1 个答案:

答案 0 :(得分:1)

您需要使用Node.nodeValue代替.text

.children('TariffEffDate')[1]会为您提供继承HTMLElementNode,但它不会为您提供一个叶节点,这意味着此HTMLElement可能有多个子节点。这就是为什么你无法获得(技术上)多个子节点的价值。您可以通过调用Node.firstChild来访问第一个节点。

基本上,您希望最终代码为:

var tariffdate = PriceSheet.children('TariffEffDate')[1].firstChild.nodeValue;