2017-10-17 14 views
0

ウェブページに存在する各コンボボックスの最大値を取得する場合はxpathとします。私が取得したいと思う何Xpathでページ内のすべての選択の最大値を取得

<label> <span class="invisible_spoken">Some choice</span> 
<select class="select_class"> 
<option value="0">0</option> 
<option value="1" > 
1 
</option> 
<option value="2" > 
2 
</option> 
</select> 
</label> 
<label> <span class="invisible_spoken">Some choice</span> 
<select class="select_class"> 
<option value="0">0</option> 
<option value="1">1</option> 
<option value="2">2</option> 
<option value="3">3</option> 
</select> 
</label> 
<label> <span class="invisible_spoken">Some choice</span> 
<select class="select_class"> 
<option value="0">0</option> 
<option value="1">1</option> 
</select> 
</label 

各コンボボックスの最大値、サンプル出力です:ここで

は選択肢にはいくつかのコンボボックスを含むサンプルHTMLがある

2, 3, 1 

私は」次のような表現で試しました:

//table[@id="rooms"]//select[contains(@class, "b_selectbox")]/option[not(//table[@id="rooms"]//select[contains(@class, "b_selectbox")]/option/@value > @value)]/@value 

しかし、最大コンボ値のちょうどコンボボックスの最大値を返しています。サンプルコンセプトでは最大値が3です。最大値が2のコンボボックスが3に等しい場合は、2を返します。

答えて

2

値の最も高いオプションのXpathセレクタ。

//label/select[@class="select_class123"]/option[not(../option/@value > @value)] 
o/p: Option elements with highest values. 

(//label/select[@class="select_class"]/option[not(../option/@value > @value)])/@value 
o/p: 2, 3, 1 

テストXML XPath online

<select class="select_class"> 
    <option value="0">0</option> 
    <option value="1">1</option> 
    <option value="2">2</option> 
</select> 

<select class="select_class"> 
    <option value="0">0</option> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
</select> 

<select class="select_class"> 
    <option value="0">0</option> 
    <option value="1">1</option> 
</select> 
関連する問題