从电子邮件类型的文本字段中获取文本

本文关键字:获取 取文本 字段 文本 电子邮件 类型 | 更新日期: 2023-09-27 18:19:02

所以我试图阅读一个网站与c#。我有它,所以它打开一个网站,去读一个TextField。然而,网站有这样的文本字段。

<input name="loginMail" class="c-txtfld c-txtfld-fixed c-txtfld-green c-txtfld-medium" id="login-email" type="email" placeholder="Email address" pattern="[^ @]*@[^ @]*">

因此我可以让c#读取它

TextField emailaddressfield = this.Document.TextField(Find.BySelector("form#login-form.credential-form input#login-email")

如果我将type属性编辑为text,它将工作。

我想保持这个为email。我怎么能这么读?

从电子邮件类型的文本字段中获取文本

可以从现有的WatiN控件(HTML)创建自定义控件。为了获得类型为email的文本字段值,我们需要创建一个类型为TextField的自定义控件。请尝试下面的代码。

[ElementTag("input", InputType = "email", Index = 5)]    
public class EmailTextField : Element<EmailTextField>
{
    public EmailTextField(DomContainer domContainer, ElementFinder finder): base(domContainer, finder)
    { }
    public EmailTextField(DomContainer domContainer, INativeElement element): base(domContainer, element)
    { }
}
EmailTextField emailaddressfield = this.Document.EmailTextField(Find.BySelector("form#login-form.credential-form input#login-email")

(伪代码-未编译)