代码之家  ›  专栏  ›  技术社区  ›  temporary_user_name

“为什么?”a@a“是否通过电子邮件输入的内置验证[[副本]

  •  1
  • temporary_user_name  · 技术社区  · 7 年前

    我创建了一个具有以下标记的输入:

    <input name="contactEmail" type="email" required>
    

    我为它添加了一个CSS类 input:invalid a@a 作为值,并且该字段被标记为有效。为什么这是一个有效的输入,而它显然不是一个有效的电子邮件?关于类型为的输入的有效值 email , MDN says

    简单来说,这意味着username@domain.tld

    但这很明显

    编辑:

    根据MDN,这是用于在兼容浏览器中验证电子邮件的算法:

    /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/
    

    我还没有把它拆开,但是 a@a 为什么?

    2 回复  |  直到 7 年前
        1
  •  1
  •   Charles Stover    7 年前

    主机名不必具有与其TLD关联的域。一个常见的例子是 localhost .

        2
  •  0
  •   Brad    7 年前

    这没有什么不好的。就这么简单。

    没有理由不能调用邮箱 a A. .

    推荐文章