Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法单击页面上可用的按钮 添加案例_Java_Selenium_Xpath_Css Selectors_Webdriverwait - Fatal编程技术网

Java 无法单击页面上可用的按钮 添加案例

Java 无法单击页面上可用的按钮 添加案例,java,selenium,xpath,css-selectors,webdriverwait,Java,Selenium,Xpath,Css Selectors,Webdriverwait,我有一个元素位置,如上面所示,试图点击selenium中的按钮,但它不起作用。我使用的是页面工厂,但元素id正确匹配 已使用其他匹配元素id验证。所需元素位于模式对话框中,因此要在元素上单击(),您必须为元素导入WebDriverWait以使其可伸缩(),并且您可以使用以下任一选项: css选择器: <button class="md-trigger btn btn-primary mrg-b-lg" data-toggle="modal" data-target="CaseProces

我有一个元素位置,如上面所示,试图点击selenium中的按钮,但它不起作用。我使用的是页面工厂,但元素id正确匹配


已使用其他匹配元素id验证。

所需元素位于模式对话框中,因此要在元素上单击(),您必须为
元素导入WebDriverWait以使其可伸缩()
,并且您可以使用以下任一选项:

  • css选择器

    <button class="md-trigger btn btn-primary mrg-b-lg" data-toggle="modal" data-target="CaseProcessmodal" id="AddCaseButton" onclick="return validateForm('#CaseProcessmodal');">Add Case</button>
    
  • xpath

    new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.cssSelector("button.md-trigger.btn.btn-primary.mrg-b-lg#AddCaseButton[data-target='CaseProcessmodal']"))).click();
    

我找到了解决这一问题的方法,再次应用了单击操作。它成功了。

请格式化您的问题并添加信息,如页面源代码、您使用的代码以及您面临的错误。我已经尝试过等待公式:Utils.scrollIntoView(driver,AddcaseButton);WebDriverWait wait=新的WebDriverWait(驱动程序,30);wait.until(ExpectedConditions.refresh(ExpectedConditions.elementtobelickable(AddcaseButton));它也不起作用。尝试等待、行动等一切。点击按钮后,将出现一个处理屏幕,应关闭窗口。单击操作不起作用
new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//button[@class='md-trigger btn btn-primary mrg-b-lg' and @id='AddCaseButton'][text()='Add Case']"))).click();