我想点击"选择页面"复选框位于"全部"下拉选项。
HTML:
<ul class="list-unstyled">
<li>
<input id="selectAllTop" name="selectAllCheckBox" attr-sel="All" type="checkbox" value="true" /><input type="hidden" name="_selectAllCheckBox" value="on" />
<label for="selectAllTop" class="checkbox-label" title="Select all results">Select all</label>
</li>
<li>
<input id="selectPageTop" name="selectPageCheckBox" attr-sel="Page" type="checkbox" value="true" /><input type="hidden" name="_selectPageCheckBox" value="on" />
<label for="selectPageTop" class="checkbox-label" title="Select page results">Select page</label>
</li>
</ul>
我收到此错误:
ElementNotVisibleException: Message: element not visible
我已经成功选择了#34; All&#34;按钮,但在复选框中有问题,这是我做的代码,但它不起作用。
button=driver.find_element_by_xpath("//div[@id='selectAllOrPage']//button[@type='button']")
button.click()
time.sleep(5)
checkboxes = driver.find_element_by_xpath("//input[@id='selectPageTop' and @type='checkbox']")
checkboxes.click()
任何类型的帮助都会很明显。
谢谢
答案 0 :(得分:0)
根据 HTML ,您已共享<input>
标记,其中包含一个兄弟<label>
标记。因此,要点击复选框选择页面,您可以使用以下代码行:
css_selector :
driver.find_element_by_css_selector("ul.list-unstyled li label[for=selectPageTop]").click()
xpath :
driver.find_element_by_xpath("//ul[@class='list-unstyled']//li//label[@for='selectPageTop']").click()