See this image我有一个可滚动的复选框列表,但我找不到实际的定位器。这是HTML:
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://testtoolbar/skin/testtoolbar.css" type="text/css"?>
<overlay id="PDM-Overlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script type="application/x-javascript" src="chrome://testtoolbar/content/testtoolbar.js" />
<toolbox id="navigator-toolbox">
<toolbar id="PDM-Toolbar" toolbarname="PDM Toolbar" accesskey="T" class="chromeclass-toolbar"
context="toolbar-context-menu" hidden="false" persist="hidden">
<textbox id="testreference" value="" type="timed" oncommand="gotoitem(event)"/>
<button id="GoButton" label="Go to Item" oncommand="gotoitem(event)"/>
</toolbar>
</toolbox>
</overlay>
我试过这个,但它不起作用:
<a class="collection-item" href="#!" disabled="">
<span>
<input id="3" class="filled-in checkbox-orange" type="checkbox"/>
<label for="3"/>
</span>
<span for="3"> 3 AM- 4 AM </span>
</a>
答案 0 :(得分:1)
要将标记置于复选框中,您应使用<input>
元素,而不是<a>
!所以请尝试以下方法:
driver.findElement(By.xpath('//input[@class="filled-in checkbox-orange"][@type="checkbox"]')).click();
或
driver.findElement(By.id('3')).click();
答案 1 :(得分:0)
如果你得到&#34;元素当前不可见,因此可能无法与Command&#34;例外,您可能正在将元素显示或可见性属性设置为隐藏在其中一个css类中。要修复它,请执行此操作。
package obs.service;
import kar.AbstractDao;
import kar.DataAccessLayerException;
import obs.domain.User;
import org.springframework.stereotype.Service;
@Service("IUserService")
public class UserService extends AbstractDao {
public UserService() {
super();
}
public void create(User event) throws DataAccessLayerException {
super.saveOrUpdate(event);
}
}