【发布时间】:2014-07-03 14:52:02
【问题描述】:
HTML 结构:
<div class="title">
<h1>Some title</h1>
</div>
<div class="row">something</div>
... (repeats the same structure)
<div class="title">
<h1>Another title</h1>
</div>
<div class="row anotherclass">1 something</div>
<div class="row">2 something</div>
<div class="row">3 something</div>
<div class="title">
<h1>Some title</h1>
</div>
<div class="row">something</div>
我怎样才能获得前一个标题 (h1) 与我的 $search 匹配的所有 div(带有“行”类)?
我现在拥有的(不适用于最后一个元素,也不会停在下一个标题):
//div[child::h1[contains(text(), "<?php echo $search ?>")]]
/following-sibling::div[contains(concat(" ", normalize-space(@class), " "), " title ")]
/preceding-sibling::div[contains(concat(" ", normalize-space(@class), " "), " row ")]
如果我搜索“另一个标题”,输出应该是:
<div class="row anotherclass">1 something</div>
<div class="row">2 something</div>
<div class="row">3 something</div>
【问题讨论】: