2015-05-26 75 views
1

我有一個XPath如下:Xpath |路徑內部操作者

.//*[text()='Name:']/../child::select | .//*[text()='Name:']/../child::span 

但是對我來說不是很緊湊,也優雅,我喜歡的東西沿着線:

.//*[text()='Name:']/../child::(select|span) 

但上面解決方案不起作用。
的想法是,該文本(例如'Name:'作爲參數傳遞給函數,並返回可能是類型選擇或跨度的節點。

將不勝感激幫助。

回答

3

你可以使用|運營商與self

.//*[text()='Name:']/../child::*[self::span | self::select] 

child::是默認的,所以它可以縮短到

.//*[text()='Name:']/../*[self::span | self::select] 
+0

這很不錯!非常感謝,我會用它。 – Sheenah