<div id="ab100">
<iframe width="1000" height="600" src="...">
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<body>
<form id="form1" action=".." method="post">
<select id="abl03" style="..">..\',\'\')', 0)" name="l03ue">
<option value="0" selected="selected"><Select a Value></option>
<option value="1">AB</option>
<option value="2">AD</option>
<option value="3">BC</option>
<option value="4">CA</option>
</select>
</div>
当我想点击DDL时,我通常会这样做:
browser.select_list(:id => 'ab103').select('CA')
,它将选择选项value =“4”。但是我收到了这个错误:
Watir::Exception::UnknownObjectException: unable to locate element, using {:id=>
"abl03", :tag_name=>"select"}
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-webdriver-0.6.2/lib/watir
-webdriver/elements/element.rb:490:in `assert_exists'
也许这个问题是由于它在iframe中。 提前谢谢。
答案 0 :(得分:2)
一些事情:
<div id="abl03">
应该是<select id="abl03">
或者它只是遗漏了。 <select id="abl03">
的ID为abl03
,但select_list(:id => 'ab103')
中的ID定位符值为ab103
。<Select a Value>
中的<option value="0" selected="selected"><Select a Value></option>
应为<Select a Value>
。因此,unable to locate element
错误有效,因为&lt; select&gt;具有指定ID的标记不存在。
如果您遇到框架问题,请查看http://watirwebdriver.com/frames/和https://github.com/watir/watirspec/blob/master/frame_spec.rb以获取示例。
答案 1 :(得分:0)
我在stackoverflow上看到了类似的问题。很抱歉再次发布。感谢。
browser.frame(:index => 0).select_list(:id => ab103).select(/CA/)
欢迎任何其他建议。感谢。