【发布时间】:2021-01-25 20:35:10
【问题描述】:
我有一个 C# Selenium 应用程序,它使用支持 Chrome 88 的 ChromeDriver/WebDriver NuGet 包。我的 Chrome 版本是 88.0.4324.104。
我正在使用的一些网页有多个具有相同 class 和 tagName 的 BUTTON 元素,因此当我执行 FindDomElement() 使用我想要的 xpath 调用,我得到多个匹配的元素。只有一个返回的元素是可交互的,而其他的则不是。现在,我尝试对每个元素执行“Click()”调用,直到找到正确的元素,为失败的元素捕获 ElementNotInteractableException 异常。
有没有办法询问 Selenium 元素是否可交互?
请注意,所有元素都是 可见和启用,我已经知道如何通过 C# 检查这些属性的状态。在这种情况下,它们只是没有有帮助。
【问题讨论】:
-
使用基于文本的相关 HTML 和您的代码试验更新问题。
-
只有一个返回的元素是可交互的 - 你是如何识别的?在代码中? 2 个按钮(可交互和不可交互)之间的哪些值设置不同?