gpt4 book ai didi

google-chrome - 为什么我必须点击两次才能使用 selenium 提交输入

转载 作者:行者123 更新时间:2023-11-28 19:59:19 41 4
gpt4 key购买 nike

环境

chrome 32 webdriver2.8

我正在使用 selenium(java) 单击提交输入。但是我需要点击两次才能激活提交操作。

输入代码:

<input type="submit" disabled="disabled" id="id_submit" name="submit" class="btn-txt" value="OK">

不工作 Selenium 代码:

if(submitButton.isEnabled()) {
new Actions(driver).moveToElement(submitButton).perform();
submitButton.click(); // this sentence is executed.
}

有效

submitButton.click();
submitButton.click();

嗯,第一个点击函数好像是让按钮获得焦点,第二个点击函数是主动提交操作。当我首先使用 moveToElement 聚焦按钮时,点击也不起作用。我可以确保该按钮已启用。我想用 Selenium 来点击按钮,我不想点击两次。我应该怎么办?有任何想法吗?谢谢。

编辑

两者皆可

JavascriptExecutor jse = (JavascriptExecutor) driver;
jse.executeScript("document.getElementById('id_submit').focus();");
jse.executeScript("document.getElementById('id_submit').click();");

更新

假设我想输入一个字符串,例如“abcdef123456”。然后执行 send_keys。看起来像 enter image description here 并启用提交按钮。第一次点击提交按钮后。它看起来像 enter image description here 和提交按钮获得焦点。第二次点击提交按钮后,提交表单并重定向页面。我对第一次点击感到困惑。

最佳答案

你试过Expected Conditions吗?类,

new WebDriverWait(driver,30).until(ExpectedConditions.elementToBeClickable(By.id("id_submit"))).click();

关于google-chrome - 为什么我必须点击两次才能使用 selenium 提交输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21330894/

41 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com