电子邮件

时间:2015-10-18 22:42:59

标签: javascript regex html5 validation

我坚持以前没有注意过这个问题。

<label> Email Address </label>
<input type="email" id="emailAddress" required placeholder='Email Address' />
<button type="submit" class="button primary small">Submit</button>

在我的JS文件中,我正在使用checkValidity()

检查其验证
checkValidEmail: function(event){
  var emailAddress = $('#emailAddress');
  if(emailAddress[0].checkValidity()){
    console.log('Valid');
  } else{
    console.log('Not Valid');
  }
}


"keyup #emailAddress": "checkValidEmail" // KeyUp works as expected

Output:
  'a@b' // Valid

我不明白这种行为。根据我的知识, @ .com是输入电子邮件的正则表达式。

请注意:我在多个网站上使用表单尝试了此操作,并显示相同的输入。在上面的例子中,我在chrome浏览器上执行它。

感谢您花时间回复!

2 个答案:

答案 0 :(得分:0)

在HTML5中,您可以像这样验证电子邮件

<form>
    <input type="email" placeholder="Enter your email">
    <input type="submit" value="Submit">
</form>

答案 1 :(得分:0)

如果您想使用正则表达式验证,请阅读

http://www.regular-expressions.info/email.html

请注意,以下是100%有效且有效的电子邮件地址:-)经常使用它来测试错误实施的电子邮件验证

xn--80a1acny@xn--80auew.xn--j1amh

另一种选择是检查电子邮件地址域名是否有效。这样做可以查询DNS服务器的MX记录(这个指向负责接收传入邮件的SMTP服务器)。您将需要服务器端代码来执行此操作。