h5 input type="mail"是怎么验证邮箱正确格式的

想了解一下验证规则,h5到底是怎么验证的? 比如这种 (#%&'/=~`*+?{}^$-|.def@ghi.com) ,在表单里是可以提交的。求大神解答。

求大神解答,谢谢谢谢谢

这是浏览器内部实现的把,具体要看是哪个浏览器

主要用ie10,11

主流浏览器版本,只要类型为mail 它会帮你验证的。如果是比较坑爹的浏览器,在提交表单的时候自己再写个正则匹配一下咯。至于正则怎么写,参考百度吧。

推荐你使用 jQuery Validate。里面内置了很多验证规则,也可以自定义规则。
参照网址:http://www.runoob.com/jquery/jquery-plugin-validate.html
具体参考内容:

<script src="http://static.runoob.com/assets/jquery-validation-1.14.0/lib/jquery.js"></script>
<script src="http://static.runoob.com/assets/jquery-validation-1.14.0/dist/jquery.validate.min.js"></script>
<script src="http://static.runoob.com/assets/jquery-validation-1.14.0/dist/localization/messages_zh.js"></script>
<script>
$.validator.setDefaults({
    submitHandler: function() {
      alert("提交事件!");
    }
});
$().ready(function() {
    $("#commentForm").validate();
});
</script>

<form class="cmxform" id="commentForm" method="get" action="">
  <fieldset>
    <legend>输入您的名字,邮箱,URL,备注。</legend>
    <p>
      <label for="cname">Name (必需, 最小两个字母)</label>
      <input id="cname" name="name" minlength="2" type="text" required>
    </p>
    <p>
      <label for="cemail">E-Mail (必需)</label>
      <input id="cemail" type="email" name="email" required>
    </p>
    <p>
      <label for="curl">URL (可选)</label>
      <input id="curl" type="url" name="url">
    </p>
    <p>
      <label for="ccomment">备注 (必需)</label>
      <textarea id="ccomment" name="comment" required></textarea>
    </p>
    <p>
      <input class="submit" type="submit" value="Submit">
    </p>
  </fieldset>
</form>

希望可以帮到你

可以上这个试一下http://www.w3school.com.cn/tiy/t.asp?f=html5_input_type_email