2013-10-21 119 views
2

我想快速找到使用XPath的特定節點,但似乎我的多個謂詞不起作用。我需要的div有一個特定的類,但有3個人擁有它。我想選擇第四個,所以我做了以下操作:Xpath多個謂詞

//div[@class='myCLass' and 4] 

但是「4」被忽略。任何幫助?我是XPath新手。

謝謝。

回答

3

如果xpath查詢返回節點集,則始終可以使用[OFFSET]運算符來訪問它的某個元素。

使用以下查詢訪問的@class='myClass'謂詞相匹配的第四個要素:

//div[@class='myCLass'][4] 

@WilliamNarmontas回答可能是一個替代語法上面顯示。

3

另外,

//div[@class='myCLass' and position()=4] 
+0

謝謝,這個工程呢! – TheGateKeeper

3

接受的答案工作正常只有當所有的div元素具有相同的父。否則使用:

(//div[@class='myCLass'])[4] 
+0

嗨@TheGateKeeper,我想第二個上面的答案,給它一個替代形狀,有點長,但恕我直言更可讀:'/ descendant :: div [@class eq'myClass'] [4]'。 – CiaPan