1

我想使用 java 代码获取输入“arjun_123@gmail.com”的电子邮件 ID。我尝试了以下代码,但它总是返回 null。

我真正需要的是,我想检查电子邮件是否成功输入。有时,电子邮件没有被输入。所以我想检查字段是否为空并检索输入的文本。

email.getAttribute("innerText");
email.getAttribute("innerHTML");
email.getAttribute("textContent");
email.getText();

代码片段

4

3 回答 3

0

您正在撤回错误的属性,您要使用的属性是值:

email.getAttribute("value");
于 2019-06-20T08:37:54.853 回答
0

以这种方法传递您的电子邮件 xpath。您将获得输入的文本

    public String getTextofInputBox(By by) {

    JavascriptExecutor js = (JavascriptExecutor) driver; 
    String value = (String)((js).executeScript("return arguments[0].value",driver.findElement(by)));
    return value;
}
于 2019-06-20T07:35:38.377 回答
0

<input>元素

根据文档,HTML 元素是 HTML 表单的交互式控件,用于接受来自用户的数据。<input>


数据验证

数据验证帮助我们确保用户以正确的格式填写了所需的字段,以确保提交的数据将被应用程序/Web 服务器成功接受。

根据快照:

证实

<input>元素包含通过属性进行的 JavaScript 验证,该属性data-validate具有 2 个子验证,即'validate-email':true'required':true。这些 Javasript 验证验证在<input>字段中输入的文本。

因此,一旦 Javasript 验证完成,您就可以提取您在EMAIL字段中输入的文本,即arjun_123@gmail.com使用以下解决方案诱导WebDriverWait :

System.out.println(new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(email).getAttribute("value"));
于 2019-06-20T16:10:56.313 回答