【问题标题】:How to click on button when input type =Button in Selenium Web driver by using Java使用Java在Selenium Web驱动程序中输入类型=按钮时如何单击按钮
【发布时间】:2022-04-11 21:01:50
【问题描述】:

当输入类型为按钮时如何点击按钮,我正在使用下面的代码,点击按钮可以工作但数据没有保存。

driver.findElement(By.cssSelector("input[type='button'][value='Save']")).click();
driver.findElement(By.cssSelector("input[@type='button'][@value='Save']")).click();
driver.findElement(By.cssSelector("input[@type='button']")).click();

以下是开发代码供大家参考:

<input id="save_btn_expe" class="edit_forms_save_btn" type="button" value="Save"> 

【问题讨论】:

  • 尝试通过元素的“Id”或“xpath”查找元素。
  • 是的,我已经申请了,但是 azax 调用按钮单击并且类型是按钮然后这不起作用。
  • 你到底是什么意思??不清楚在说什么??
  • 我想说的是找到具有其 Id 或 Xpath 的元素。在硒中,您可以通过几种方式找到元素,这两种就是其中之一。假设您的按钮在另一个按钮单击时显示,然后,当第一个按钮被单击时等待一段时间 - 使用此代码 driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS); 并尝试单击 ajax 调用按钮。
  • @Saurabh Gaur 我已经应用了更多代码,按钮点击工作正常但我的数据没有保存,因为 azax 调用按钮点击所以我没有找到任何解决方案。

标签: selenium selenium-webdriver


【解决方案1】:
WebElement setElement = driver.findElement(By.id("save_btn_expe"));
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("arguments[0].click()", setElement);

driver.findElement(By.id("save_btn_expe")).click();

driver.findElement(By.xpath("//input[@id='save_btn_expe']")).click();

【讨论】:

  • Azax 调用按钮,输入类型为按钮,然后这不起作用。
【解决方案2】:

通过考虑您的陈述“点击按钮有效”。您可以使用 submit 方法发布表单数据。您可以使用其他两个替代项进行点击。以下代码在c#中:

driver.FindElement(By.Id("save_btn_expe")).submit();
// Send enter key on the element.
driver.FindElement(By.Id("save_btn_expe")).SendKeys(OpenQA.Selenium.Keys.Enter);

在尝试上述代码之前,请检查手动保存以确保保存时没有错误。

【讨论】:

  • Azax 调用按钮单击和输入类型是按钮然后提交不起作用。
【解决方案3】:

由于它是一个输入标签元素,虽然类型是按钮.click() 或.submit() 将不起作用。您必须提供 Enter 键作为输入。使用以下代码:

driver.findElement(By.xpath("//input[@id='save_btn_expe']")).sendKeys(org.openqa.selenium.Keys.ENTER);

我希望这对你有用,就像对我一样。

【讨论】:

    【解决方案4】:

    如果在 DOM 中使用 for,下面的选择器对我有用:

    Selenide.$("label[for=\"save_btn_expe\"]").click();
    

    【讨论】:

      猜你喜欢
      • 2014-05-30
      • 1970-01-01
      • 2018-01-30
      • 2016-10-04
      • 1970-01-01
      • 1970-01-01
      • 2021-10-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多