【发布时间】:2018-12-06 07:47:09
【问题描述】:
我需要通过文本包含(内部文本)使用 XPath 搜索节点
<div class="row"> // 1-0-4
<div class="col-xs-4">
<label for="FactoryLeadTime">Factory Lead Time:</label>
</div>
<div class="col-xs-8">
4 Weeks
</div>
</div>
我的 JS 代码
var xpath = 'label[text()[normalize-space(.)="Factory Lead Time:"]]';
//var xpath = "//label[a[contains(., 'Factory Lead Time:')]]/text()";
var res = document.evaluate(xpath, document, null, XPathResult.ANY_TYPE, null);
console.log(res);
由于控制台显示,我不确定搜索是否成功
XPathResultinvalidIteratorState: falseresultType: 4__proto__: XPathResultPrototype { iterateNext: iterateNext(), snapshotItem: snapshotItem(), ANY_TYPE: 0, … } tmp.js:252:1
事实上,我正在尝试根据之前的文本“工厂交货时间:”获得“4 周”的结果
有没有一种巧妙的方法可以用 XPath 做到这一点?
提前致谢
【问题讨论】:
标签: javascript xpath