2014-04-28 25 views
0

在我的html頁面中,有一個選項可以添加多個「資源標識」。當我添加一個新的時候,它會創建一個包含以下元素的新行。獲取對象的最後一次發生

<tr> 
<td width="150" valign="top"> 
<input type="hidden" name="expressions[0].checked"/> 
<input type="hidden" value="B" name="expressions[0].expressionLabel"/> 
<b>Resource Identity</b> 
<input type="hidden" value="ResourceIdentity" name="expressions[0].parameterName"/> 
<input type="hidden" value="ResourceIdentity" name="expressions[0].fieldName"/> 
<input type="hidden" value="RF" name="expressions[0].fieldType"/> 
<input type="hidden" value="" name="expressions[0].limitedValues"/> 
</td> 
</tr> 


<tr> 
<td width="150" valign="top"> 
    <input type="hidden" name="expressions[1].checked"/> 
    <input type="hidden" value="B" name="expressions[1].expressionLabel"/> 
    <b>Resource Identity</b> 
    <input type="hidden" value="ResourceIdentity" name="expressions[1].parameterName"/> 
    <input type="hidden" value="ResourceIdentity" name="expressions[1].fieldName"/> 
    <input type="hidden" value="RF" name="expressions[1].fieldType"/> 
    <input type="hidden" value="" name="expressions[1].limitedValues"/> 
    </td> 
    </tr> 

如何找到最後一次出現<b>Resource Identity</b>? 我試圖通過使用下面的xpath找出標籤上方的名稱,但它始終計算爲selenium掃描HTML從上到下的發現。

driver.findElement(By.xpath(//b[text() = 'Resource Identity']/preceding-sibling::input[1])).getAttribute("name").toString(); 

如果有多個「資源標識」,那麼我怎麼去最後的「資源標識」,並找到名字嗎?

回答

1

使用last()

(//b[text() = 'Resource Identity']/preceding-sibling::input[1])[last()] 
+0

它仍然需要第一 「資源身份」,而不是最後的 – Leo

+0

@Leo OK,你看這個'(// B [文本()= '資源身份'] /前同輩::輸入[1])[最後()]'? – alecxe

+0

這個工程。謝謝。 – Leo

相關問題