2010-06-21 81 views
2

我不能在我的HTML頁面來標識的鏈接標籤如下圖所示:的XPath在HTML頁面的鏈接使用鏈接

<a href="/somthing/confirm_delete_somthing?&id=12">Delete this monitor</a> 

什麼是XPath標識由鏈接標籤Delete this monitor

類似//a[@label="Delete this monitor"]

+0

好問題(+1)。看到我的答案比目前接受的更好的解決方案。 :) – 2010-06-21 16:12:35

回答

2

@label替換爲text(),其代表節點的文本值。

//a[text()="Delete this monitor"]

對於情況的文字是另一條線路上,如

<a> 
    Delete this monitor 
</a> 

可以使用normalize-space()功能,消除啓動和尾隨空格:

//a[normalize-space(text())="Delete this monitor"]

+0

,非常感謝 – 2010-06-21 15:27:42

2

使用

//a[. = "Delete this monitor"] 

//a[normalize-space() ="Delete this monitor"] 

這將選擇節點,即使它是類似如下

<a href="/somthing/confirm_delete_somthing?&id=12">Delete <strong>this</strong> monitor</a> 

相反,從目前接受的答案確實表達不是選擇這樣一個節點

+0

讓我說我不知道​​節點的結束,即我知道它將開始與「刪除這個」,但不知道第三個詞是什麼,然後我用什麼?還是'normalize-space()'會起作用? – 2010-06-25 15:16:56

+0

@Mo:使用:'starts-with(normalize-space(),'刪除這個')' – 2010-06-25 15:55:05