Selenium Webdriver submit() 与 click()。
click() 函数和 submit() 函数在功能上非常相似。但仍有一些细微差别。我们来讨论一下它们之间的一些区别。
submit() 函数仅适用于 <form>,并且可以更容易地处理表单。它可以与表单内的任何元素一起使用。click() 仅适用于表单中带有 submit 类型按钮。
submit() 函数将等到页面加载,但 click() 仅在提供了显式等待条件时才等待。如果表单具有按钮类型的 submit,则无法使用 submit() 方法。而且,如果按钮位于 <form> 外部,那么 submit() 将不起作用。
因此,我们看到 click() 适用于两种类型的按钮,无论按钮位于 <form> 内部还是外部。我们以以下表单为例进行实现。

示例
使用 submit() 的代码实现。
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.concurrent.TimeUnit;
public class SubmitForm{
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
WebDriver driver = new ChromeDriver();
String url = "https://#/";
driver.get(url);
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
// identify elements
driver.findElement(By.id("email")).sendKeys("abc@gmail.com");
driver.findElement(By.id("pass")).sendKeys("123456");
// submitting form with submit()
driver.findElement(By.id("pass")).submit();
driver.quit()
}
}示例
使用 click() 的代码实现。
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.concurrent.TimeUnit;
public class ClickForm{
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
WebDriver driver = new ChromeDriver();
String url = "https://#/";
driver.get(url);
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
// identify elements
driver.findElement(By.id("email")).sendKeys("abc@gmail.com");
driver.findElement(By.id("pass")).sendKeys("123456");
// submitting form with click()
driver.findElement(By.name("login")).click();
driver.quit()
}
}
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP