使用watir设置复选框

时间:2018-07-13 03:51:50

标签: ruby selenium selenium-chromedriver watir

<div class="icheckbox_minimal" style="position: relative;">
 <input class="checkbox" type="checkbox" value="1" name="order[terms]" 
  id="order_terms" style="position: absolute; top: -20%; left: -20%; 
  display: block; width: 140%; height: 140%; margin: 0px; padding: 0px;     
  background: rgb(255, 255, 255); border: 0px; opacity: 0;">
 <ins class="iCheck-helper" style="position: absolute; top: -20%; left: -20%; 
  display: block; width: 140%; height: 140%; margin: 0px; padding: 0px; 
  background: rgb(255, 255, 255); border: 0px; opacity: 0;">
 </ins>
</div>

如何设置此元素的复选框?

我尝试了以下

browser.checkbox(:class => "iCheck-helper").when_present.set

browser.div(:class => "icheckbox_minimal").fire_event :click

2 个答案:

答案 0 :(得分:1)

您可以单击ins标记以设置复选框值,如下所示。

if !browser.checkbox(id: 'order_terms').set? then
   puts "not set"
   browser.element(class: 'iCheck-helper').click
end
puts browser.checkbox(id: 'order_terms').set? 

答案 1 :(得分:0)

尝试一下

constexpr

当找到一个元素时,使用方法checkbox时该元素必须是checkbox,但是要将div的定位符传递给checkbox方法。