![](/img/trans.png)
[英]My "From spreadsheet - On form submit" trigger is getting disabled every time I try to run it - how do I find out why?
[英]How to find out why an element is disabled briefly?
我正在编写自动化代码,以单击在chrome浏览器中打开的网页上的按钮。 事实证明,该按钮已快速加载到DOM上,但在数毫秒内不可单击。 在禁用时间内,它甚至没有被GUI标记为禁用。 因此,我的自动化代码立即找到并单击了按钮,但是什么也没有发生。
一个原因可能是在禁用时间中,按钮代码中有一个称为“禁用”的属性。 我如何发现确实如此?
还有其他方法可以暂时禁用按钮/元素吗? 如果是,那么请告诉我哪些方法以及如何检查使用的方法?
编辑 -根据rorys的建议,我在页面加载时添加了代码以打印元素html。 html中没有禁用的属性。 我想念什么吗?
如果不查看代码或预览问题本身,很难说。
这可能是按钮被越来越添加到DOM,但点击事件处理程序不会立即应用,这将使它看起来禁用, 应用前。
可能是暂时有一个禁用的属性,您可以轻松地在自动化代码中对其进行测试; 即使它类似于console.log(element);
在控制台中查看元素的HTML。
JavascriptExecutor js = (JavascriptExecutor) driver;
WebElement element = new WebDriverWait(driver, 30)
.until(ExpectedConditions.elementToBeClickable(By.xpath(xpathString)));
js.executeScript("arguments[0].click()", topic);
JavascriptExecutor
执行比仅使用element.click()
还要好,使用WebDriverWait
和condition elementToBeClickable
将下一个代码的执行延迟30秒,如上所示。
这个答案可能比问题发布的时间还早,但希望对您有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.