当前位置: 首页 > 知识库问答 >
问题:

Selenium:ElementNotInteractableException:尝试访问自动完成文本框时元素不可交互

田佐
2023-03-14

我被webelement卡住了,我正试图用下面的代码访问网页,但仍然遇到了提到的错误。该元素允许自动完成要在单个文本框中输入的主题和多个主题。

WebElement Subjects = driver.findElement(By.xpath("//*[@id='subjectsContainer']"));
        
        
        JavascriptExecutor executor = (JavascriptExecutor)driver;
        executor.executeScript("arguments[0].click();", Subjects);
        

        String subject1 = prop.getProperty("subject1");

        String subject2 = prop.getProperty("subject2");
        
        String subject3 = prop.getProperty("subject3");

        Subjects.sendKeys(subject1);

        Subjects.sendKeys(Keys.ENTER);

        Subjects.sendKeys(subject2);

        Subjects.sendKeys(Keys.ENTER);

        Subjects.sendKeys(subject3);

        Subjects.sendKeys(Keys.ENTER);

        driver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);

WebElement接受用户输入的多个主题,用户可以自动完成

硒网错误

共有1个答案

窦成荫
2023-03-14

在尝试向此元素发送文本之前,似乎需要添加一些延迟或元素可见性验证。
此外,除非您别无选择,否则不建议使用JavaScript单击而不是WebDriver单击。

 类似资料:
  • 问题内容: 我正在尝试在以下网站中输入用户名和密码:https : //www.thegreatcoursesplus.com/sign- in 这给出了以下异常: 然后我尝试使用Java脚本: 没有错误,但没有文本发送到“电子邮件地址”字段。 有人可以指导我以正确的方式输入电子邮件地址,密码,然后单击“登录”。 感谢您的协助 问题答案: 此错误消息… …表示所需的 元素 在 WebDriver

  • 问题内容: 我有一个文本框,我想在其上应用自动完成功能。我正在使用以下插件: 自动压缩 它可以正常工作,但是一旦我将其与AngularJS结合使用,它就会停止工作: 我有以下代码: 和jfiddle的链接如下: 小提琴 如您所见,虽然没有Angular,但自动完成功能不起作用。 有人可以帮忙吗? 问题答案: 为您服务的傻瓜 http://plnkr.co/edit/5XmPfQ78vRjSrxE0

  • 问题内容: 是否有任何可以用来实现自动完成文本框的现成的Java Swing组件? 问题答案: 这是一个没有下拉选择的自动补全示例。仅当找到唯一匹配项时,它才会自动为您完成。补全会自动插入文本字段并选择。类似于Safari的地址字段的工作方式。 可以扩展该解决方案以提供选项列表,但是这并不是我的要求的一部分。 更新 我使用原始代码丢失了域。现在可以在github上访问它:https : //git

  • 主要内容:本节引言:,1.相关属性:,2.代码示例:,3.示例代码下载:,本节小结:本节引言: 本节继续来学习Adapter类的控件,这次带来的是AutoCompleteTextView(自动完成文本框), 相信细心的你发现了,和Adapter搭边的控件,都可以自己定义item的样式,是吧! 或者说每个Item的布局~想怎么玩就怎么玩~嗯,话不多说,开始本节内容~ 对了贴下官方API:AutoCompleteTextView 1.相关属性: android:completionH

  • 问题内容: 在下面的代码中,我无法在密码字段中发送密码密钥,我尝试单击该字段,清除该字段并发送密钥。但是现在可以使用任何一种方法。但是如果我调试和测试它的工作 问题答案: 尝试将隐式等待时间设置为大约10秒。 或设置一个明确的等待。显式等待是您定义的代码,用于等待特定条件发生后再继续执行代码。您的情况就是密码输入字段的可见性。(感谢ainlolcat的评论) 说明 :硒无法找到该元素的原因是因为密

  • 我在一个SVG中有一个text元素,我已将jQuery ui应用到该元素中。每当我试图拖动它时,顶部和左侧的CSS属性就会如您所期望的那样发生变化,然而,元素本身并没有移动--它只是停留在原地。 这违背了我所理解的关于定位的一切。它似乎完全忽视了“上”和“左”的规则。 然而,情节变得更加浓重。 我还在同一svg中对图像应用了ui-draggable,它在这方面工作得很好。当我拖动它的时候,它会像预