我的代码就像这样
var tariffdate = PriceSheet.children('TariffEffDate')[1].text;
我期望在TariffEffDate
标记内获取数据。但它反而给了我undefined
。
我可以获取代码
的结果<TariffEffDate>1999-01-01T00:00:00</TariffEffDate>
console.log(PriceSheet.children('TariffEffDate')[1])
但是当我添加.text
来获取此节点内的数据时,它会给我undefined
。
谁能指出我在这里做错了什么?
答案 0 :(得分:1)
您需要使用Node.nodeValue
代替.text
。
.children('TariffEffDate')[1]
会为您提供继承HTMLElement
的Node
,但它不会为您提供一个叶节点,这意味着此HTMLElement可能有多个子节点。这就是为什么你无法获得(技术上)多个子节点的价值。您可以通过调用Node.firstChild
来访问第一个节点。
基本上,您希望最终代码为:
var tariffdate = PriceSheet.children('TariffEffDate')[1].firstChild.nodeValue;