Selenium Webdriver - 点击隐藏元素

标签 selenium webdriver hidden-field

我正在尝试在 Google Drive 中自动上传文件功能。

用于传递参数的元素被隐藏,高度为 0px。

任何用户操作都不会使该元素可见。因此,我需要解决方法以在不可见时单击该元素。

<input type="file" style="height: 0px; visibility: hidden; position: absolute; width: 340px; font-size: inherit;" multiple=""/>

上述元素的 xpath 是 -
//*[@class='goog-menu goog-menu-vertical uploadmenu density-tiny']/input

我在用
WebDriver.findElement(By.xpath(<xpath>).sendKeys(<uploadFile>)

异常(exception) -
org.openqa.selenium.ElementNotVisibleException
  • 元素当前不可见,因此可能无法与之交互。

  • 我尝试过使用 JavascriptExecutor。但无法找到确切的语法。

    最佳答案

    简单的解决方案:

    WebElement tmpElement = driver.finElement(ElementLocator);
    JavascriptExecutor executor = (JavascriptExecutor)driver;
    executor.executeScript("arguments[0].click();", tmpElement);
    

    关于Selenium Webdriver - 点击隐藏元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12363038/

    相关文章:

    javascript - 获取在 javascript 中提交的表单的实例

    jquery - jQuery 的 `click()` 方法适用于隐藏的表单元素吗?

    c# - 将 PhantomJS 命令行选项指定给 Selenium PhantomJSDriver

    python - 节点出现故障时如何从 Selenium 集线器获取诊断信息?

    javascript - 如何通过 JavaScript 设置输入隐藏字段的值?

    python - 从一个网页内的其他选项卡获取内容

    c# - Selenium-如何迭代网页以查找所有必要的元素并执行单击操作

    java - 如何将 `regex` 嵌入到 `By.xpath...` 中?

    javascript - 如何在 python 中模拟 onclick 事件?

    python - Selenium 中的 IF/THEN 语句