2013-11-15 93 views
0

由於我的無知,我正在處理的問題無法解決,因爲我在具有不同教育要求的瀏覽器上有一個頁面,每個瀏覽器都有四個單選按鈕。我希望能夠爲每個教育需求選擇一個特定的單選按鈕。Watir。選擇多個單選按鈕選項

我的代碼是這樣的:

radios = browser.radios 
radios.each do |radio| 
    radio.input(:value => "very").set 
end 

然而,這繼續給我一個錯誤消息說:「未定義方法#Watir ::輸入‘設置’:0x103a5d508」

我做對於select_lists,我改變了所有select_lists的選項頁面上,其工作的第二個選項類似的東西:

lists = browser.select_lists 
lists.each do |list| 
    list.option(:index, 1).select 
end 

對於我的代碼爲單選按鈕使用radio.o我試着ption但它給了我一個類似的錯誤:「NoMethodError:未定義的方法`的#Watir ::選項設置」:0x103a466a0"

回答

2

問題

代碼

radios = browser.radios 
radios.each do |radio| 
    radio.input(:value => "very").set 
end 

說,對每個單選按鈕,設置第一個輸入元素的值爲「very」。這表明你正在尋找html,如:

<radio> 
    <input value="very" /> 
</radio> 

這可能不是HTML的樣子。

解決方案

我假設你真的要設置的HTML是這樣的:

<input type="radio" value="very" /> 

要與價值 「非常」 設置每個單選按鈕,代碼應該是:

# Get a collection of all radios with value "very" 
radios = browser.radios(:value => "very") 

# Iterate through each radio button in the collection and set it 
radios.each do |radio| 
    radio.set 
end 

這可以簡單地縮寫爲:

​​