验证允许没有点的电子邮件?
我正在编写一个非常简单的模型来演示一些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