我的代码是这样的

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


我希望在TariffEffDate标记内获取数据的位置。但这给了我undefined

我可以得到<TariffEffDate>1999-01-01T00:00:00</TariffEffDate>作为代码的结果

  console.log(PriceSheet.children('TariffEffDate')[1])


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

最佳答案

您需要使用Node.nodeValue而不是.text

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

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

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

10-06 14:16