当输入类型为按钮时,如何点击按钮,我使用下面的代码,点击按钮正在工作,但数据未保存。
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">
答案 0 :(得分:0)
WebElement setElement = driver.findElement(By.id("save_btn_expe"));
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("arguments[0].click()", setElement);
OR
driver.findElement(By.id("save_btn_expe")).click();
OR
driver.findElement(By.xpath("//input[@id='save_btn_expe']")).click();
答案 1 :(得分:0)
通过考虑你的陈述&#34;点击按钮正在工作&#34;。您可以使用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);
在尝试上述代码之前,请检查手动保存以确保保存时没有错误。
答案 2 :(得分:0)
由于它是输入标签元素,因此类型为button。click()或.submit()将不起作用。您必须提供Enter键作为输入。使用以下代码:
driver.findElement(By.xpath("//input[@id='save_btn_expe']")).sendKeys(org.openqa.selenium.Keys.ENTER);
我希望这对您一样,对我也一样。
答案 3 :(得分:0)
如果在 DOM 中使用 for
,下面的选择器对我有用:
Selenide.$("label[for=\"save_btn_expe\"]").click();