找到所有出现的html元素序列

时间:2013-11-18 21:18:24

标签: javascript xpath evaluate

XPath只能找到孩子ev('.//div[@class="parent"]/div[@class="children"]');,但不能找到兄弟姐妹,我需要找到所有出现的序列: <div class="1"></div><div class="2"></div><div class="3">

不是当只有其中一个存在或者出现错误的顺序时,你有什么建议来实现这个结果?

1 个答案:

答案 0 :(得分:0)

我不是100%确定我是否正确解释了您的边界条件,但是如果您想要检测完全关于<div>的序列其他 之间的标签你可以使用这个表达式:

.//div[@class='1' and (following-sibling::div)[1][@class = '2'] and ((following-sibling::div)[2][@class = '3'])]

这将返回<div class='1'>的出现。当然,您可以轻松更改此选项以使用class='2'class='3'返回其他出现的内容。

如果要排除其他标签之间可能发生的情况,可以使用:

.//div[@class='1' and (following-sibling::*)[1][local-name()='div' and @class = '2'] and ((following-sibling::*)[2][local-name()='div' and @class = '3'])]