有沒有人對如何使用 觸發下拉選單中的選擇有任何見解Watir?我似乎無法找到第一個欄位。我試過class(顯然已棄用)、id和name。
require 'webdrivers/chromedriver'
require 'open-uri'
require 'json'
Selenium::WebDriver::Chrome.path = '/Applications/RF_Utilities/Google Chrome.app/Contents/MacOS/Google Chrome'
url = 'https://www.finditatmpg.com/Default.aspx'
a = Watir::Browser.new :chrome, headless: false
a.goto url
# a.select(id: 'dpdCemetery_Input').select('Beechwood')
a.select(name: 'dpdCemetery').select('Beechwood') # doesn't work
puts "cemetery selected" # a marker
a.text_field(id: 'txtSurname').set 'Smith' # this works if set first
puts "last name selected" # a marker
a.text_field(id: 'txtFirstname').set 'John'
puts "first name selected" # a marker
a.button(id: 'btnSearch_input').click # submit
錯誤:
timed out after 5 seconds, waiting for false condition on #<Watir::Select: located: false; {:name=>"dpdCemetery", :tag_name=>"select"}> (Watir::Wait::TimeoutError)
更新:這是表單的復制語法:
<div id="dpdCemetery" class="RadComboBox RadComboBox_Bootstrap" style="width:300px;white-space:normal;">
<!-- 2021.1.119.45 --><table summary="combobox" style="border-width:0;border-collapse:collapse;width:100%">
<tbody><tr>
<td hljs-string">" style="width:100%;">
<input name="dpdCemetery" type="text" hljs-string">" id="dpdCemetery_Input" value="Select a Cemetery" autocomplete="off">
</td>
<td hljs-string">">
<a id="dpdCemetery_Arrow" style="overflow: hidden;display: block;position: relative;outline: none;">select</a>
</td>
</tr>
</tbody></table><div hljs-string">" style="z-index:6000;display:none;"><div id="dpdCemetery_DropDown" hljs-string">"><div hljs-string">"></div></div></div><input id="dpdCemetery_ClientState" name="dpdCemetery_ClientState" type="hidden" autocomplete="off">
</div>
uj5u.com熱心網友回復:
問題是這些不是“真正的”HTML Select/Option 元素下拉串列,因此您不能使用Select該類。標簽名稱div不是select.
你需要使用類似的東西(更新 - 正確的定位器是一個 id 而不是一個名字):
a.div(id: 'dpdCemetary').click
a.li(text: /Beechwood/).click
uj5u.com熱心網友回復:
解決了:
a.text_field(name: 'dpdCemetery').set('Beechwood')
似乎它的行為就像一個text欄位。JS 提供了dropdown串列。我的印象是Watir可以處理那種事情。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/314376.html
