我正在尝试根据参数中设置的门牌号从lights节点获取值。问题是,根据某些条件,房屋可能位于不同的行位置。
如果要发送给我的门牌号参数是House237,那么我如何获取row-2-Lights
节点内的灯光数量?
如果下次运行,门牌号为House867,我该怎么做?以下是我的HTML:
<?xml version='1.0' encoding='utf-8'?>
<table id="neighborhood">
<tr onmouseover="leave('1')">
<td id="row-1-house">
<div class="houseCol">
<a href="#" onClick="goHome('867');return false">
House867
</a>
</div>
</td>
<td id="row-1-Lights">
<div class="decimal">14</div>
</td>
</tr>
<tr onmouseover="leave('2')">
<td id="row-2-house">
<div class="houseCol">
<a href="#" onClick="goHome('237');return false">
House237
</a>
</div>
</td>
<td id="row-2-Lights">
<div class="decimal">12</div>
</td>
</tr>
</table>
答案 0 :(得分:1)
您可以尝试以下XPath-1.0表达式。该参数是“ HouseXXX”字符串,它是a
元素的子元素。
/table[@id='neighborhood']/tr[td/div[@class='houseCol']/a[normalize-space(text())='House237']]/td[contains(@id,'Lights')]/div[@class='decimal']/text()
此输出为
12
在此示例中,参数设置为“ House237”。如何将参数合并到XPath表达式中取决于您的用例场景。
例如,在XSLT中,您可以用$ HouseNumber之类的变量替换“ House237”来设置参数。