Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.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,如何使用DOM xpath选择介于<;br>;标签_Javascript_Dom_Xpath - Fatal编程技术网

Javascript,如何使用DOM xpath选择介于<;br>;标签

Javascript,如何使用DOM xpath选择介于<;br>;标签,javascript,dom,xpath,Javascript,Dom,Xpath,如何使用xpath或建议其他解决方案在标记之间进行选择。 到目前为止,这是我的代码,我选择了,但我需要标记之间的内容: <!DOCTYPE html> <html> <head> </head> <body> <p>some text <br>select this </br>and not this</p> <div id="insert"></div> <

如何使用xpath或建议其他解决方案在

标记之间进行选择。 到目前为止,这是我的代码,我选择了
,但我需要

标记之间的内容:

<!DOCTYPE html>
<html>
<head>
</head>
<body>
<p>some text <br>select this </br>and not this</p>
<div id="insert"></div>
<script>
data = document;
var headings = data.evaluate("//p", data, null, XPathResult.ANY_TYPE, null);
var thisHeading = headings.iterateNext();
var selectedText = "Selected: <br>";
while (thisHeading) {
    selectedText += thisHeading.textContent + "<br>";
    thisHeading = headings.iterateNext();
}
document.getElementById('insert').innerHTML = selectedText;
</script>
</body>
</html>

一些文本
选择此
而不是此

数据=文件; var headers=data.evaluate(“//p”,data,null,XPathResult.ANY_TYPE,null); var thishheading=headers.iterateNext(); var selectedText=“Selected:
”; while(本标题){ selectedText+=thishheading.textContent+“
”; thisHeading=headers.iterateNext(); } document.getElementById('insert')。innerHTML=selectedText;
假设

p
中唯一的标记。您可以对每个

标记进行拆分,以获得一个元素数组

注意:

无效

var strings='some text
选择this
而不是this'。拆分(//i); 警报(strings.length)//3.
那么

是无效的HTML,因为
br
元素是空元素

就XPath而言,您可以使用路径
//p/br[1]/following sibling::node()[1][self::text()]
来选择字符串值为
的文本节点,并在第一个子
br
的以下同级不是文本节点的情况下选择空节点集

var strings = 'some text <br>select this <br/>and not this'.split(/<br\/?>/i);
alert(strings.length); //3