2014-10-08 107 views
2

的水豚選擇方法非常適用於旁邊有與所需的文字,像下面的標籤標記單選按鈕:如何選擇水豚與鄰近文本的單選按鈕?

<input id="rGEQr-real" type="radio" name="_pgcr6g7j"/> 
<label id="rGEQr-cnt" class="z-radio-content" for="rGEQr-real">Web IDE Support</label> 

page.choose('Web IDE Support')工作得很好這一點。

但這樣的事情:

<form action=""> 
<input type="radio" value="male" name="sex"/> 
MALE 
<br/> 
<input type="radio" value="female" name="sex"/> 
FEMALE 
</form> 

這可是沒有標籤標記,簡單choose未能設置單選按鈕。

我們如何才能在水豚中實現這一目標?

回答

1

如果您需要選擇比它的名稱,編號或標籤文本以外的任何一個單選按鈕,你將需要:

  1. find和CSS或XPath查詢的單選按鈕,通常。
  2. 調用set方法

在這種情況下,你需要使用XPath,因爲CSS選擇器不支持文本定位。 XPath需要檢查以下兄弟文本節點是否是指定的文本。這可以用:

# Select MALE 
page.find(:xpath, '//input[following-sibling::text()[1][normalize-space(.) = "MALE"]]').set(true) 

# Select FEMALE 
page.find(:xpath, '//input[following-sibling::text()[1][normalize-space(.) = "FEMALE"]]').set(true) 
相關問題