Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript XPathResult未获得第一个结果_Javascript_Jquery_Xpath - Fatal编程技术网

Javascript XPathResult未获得第一个结果

Javascript XPathResult未获得第一个结果,javascript,jquery,xpath,Javascript,Jquery,Xpath,当我运行下面的JS时,除了第一个元素外,只会出现p元素,其中包含hello,为什么第一个元素不会出现 JS: html: 你好 你好 再见 你好 再见,朋友 为了返回正确的节点,请尝试将代码的相关部分更改为: queryResult = "hello"; exp = `//p[contains(., "${queryResult}")]` var headings = document.evaluate(exp, document, null, XPat

当我运行下面的JS时,除了第一个元素外,只会出现p元素,其中包含hello,为什么第一个元素不会出现

JS:

html:


你好

你好

再见

你好

再见,朋友


为了返回正确的
节点,请尝试将代码的相关部分更改为:

queryResult = "hello";
exp = `//p[contains(., "${queryResult}")]`
var headings = document.evaluate(exp, document, null, XPathResult.ANY_TYPE);

while(thisHeading = headings.iterateNext()) {
  console.log(thisHeading);
}

输出应该是3个相关的
节点。

文档
html是什么样子的?
<body onload="testQuery();">
    <p>hello</p>
    <p>hello</p>
    <p>goodbye</p>
    <p>hello there</p>
    <p>goodbye friend</p>
</body>
queryResult = "hello";
exp = `//p[contains(., "${queryResult}")]`
var headings = document.evaluate(exp, document, null, XPathResult.ANY_TYPE);

while(thisHeading = headings.iterateNext()) {
  console.log(thisHeading);
}