首页 > 解决方案 > 使用 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

标签: rubyseleniumselenium-chromedriverwatir

解决方案


您可以单击 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? 

推荐阅读