验证允许没有点的电子邮件?

我正在编写一个非常简单的模型来演示一些HTML5表单验证。 但是,我注意到电子邮件验证不会检查地址中的点,也不会检查所述点之后的字符。

换句话说,“john @ doe”被认为是有效的,当它显然不是有效的电子邮件地址时; “doe”不是一个域。

这是我编写我的电子邮件字段的方式:

<input type="email" required />

这还不够吗?

查看这个小提琴,看看我的意思。

注意:我知道如何通过RegEx模式来完成此操作。 我只是想知道如何有人可以放弃使用电子邮件类型。


因为@ b是一个有效的电子邮件地址(例如localhost是一个有效的域名)。 请参阅http://en.wikipedia.org/wiki/Email_address#Examples

另外,请记住,您应该始终在服务器上进行输入验证。 客户端验证应仅用于向用户提供反馈,而不是依赖,因为它可以轻松绕过。


理论上你可以有一个没有“。”的地址。 在。

由于技术上的事情如:

user@com
user@localserver
user@[IPv6:2001:db8::1]

都是有效的电子邮件。

所以标准的HTML5验证允许所有有效的电子邮件,包括不常见的电子邮件。

对于一些易于阅读的解释(而不是阅读标准):http://en.wikipedia.org/wiki/Email_address#Examples


尝试将其添加到输入

pattern="[a-z0-9._%+-]+@[a-z0-9.-]+.[a-z]{2,63}$"

小提琴

链接地址: http://www.djcxy.com/p/16587.html

上一篇: validation allow emails without a dot?

下一篇: Why an email address must not exceed 254 characters?