簡體   English   中英

沒有選擇Selenium和Python的多個復選框的操作

[英]No action to select multiple checkboxes with Selenium and Python

我的目標:

訪問特定頁面時,我需要單擊10個復選框

我的代碼:

def select_checkbox(self):

    checkboxes = self.find_elements(EventsLocators.CHECKBOX_SELECTOR)

    for each_checkbox in checkboxes:

        each_checkbox.click()

我的問題:

測試結果顯示成功,但未選中任何復選框

我的定位器:

CHECKBOX_SELECTOR =(通過CSS_SELECTOR,“ Input [type ='checkbox']”))

HTML:

<span class="left">
<input id="id_qa-timesheets_facilitator_sign_complete" name="qa-timesheets_facilitator_sign_complete" type="checkbox">
<label>Time sheets complete with team lead sign off</label>
<br>
<span class="help_text"></span>
</span>

首先,檢查“ print checkboxes是否真的顯示10個Web元素。 如果這樣,您仍然無法單擊復選框,請嘗試使用JS click()方法而不是常用方法(有時,普通click()無法正常工作):

def select_checkbox():
    checkboxes = driver.find_elements_by_css_locator('input[type="checkbox"]')
    for each_checkbox in checkboxes:
        if not each_checkbox.is_selected(): # just to be sure that you make check, but not uncheck
            driver.execute_script('arguments[0].click()', each_checkbox)

由於我不熟悉您的框架,因此我將其作為簡單的函數進行,因此請根據需要進行更改

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM