我可以在JS中使用HTML5电子邮件验证中构建的浏览器吗?

时间:2017-02-07 12:40:14

标签: javascript jquery html5

我正在处理一个非常基本的HTML表单,并被要求添加电子邮件验证。表单是通过AJAX帖子发送的,因此我无法通过提交按钮使用标准HTML验证:

<form>
    <input type="email" id="email">
    <input type="submit" value="Submit">
</form>

我可以在JS中添加一些正则表达式,但这让我想知道,它是否可以与JS内置的浏览器进行交互?

E.g。内置函数或属性,可以根据验证(有效/无效)给出输入当前状态

类似的东西:

var valid = document.getElementById("email").isValid();

3 个答案:

答案 0 :(得分:4)

我认为你可以在每个元素上使用checkValidity方法:

var email = document.getElementById('email');
var isValid = email.checkValidity();

if (isValid) {
    // Submit form
}

您还可以使用元素上的validity属性来检查哪些验证约束失败:

var validity = email.validity;
if (validity.valueMissing) {
    return 'Please enter your email';
}

答案 1 :(得分:0)

是的,您可以使用约束验证API方法

您可以在此处找到详细信息:

https://developer.mozilla.org/en-US/docs/Learn/HTML/Forms/Data_form_validation#Validating_forms_using_JavaScript

答案 2 :(得分:-1)

你正在考虑这样的事情:      

JS

&#13;
&#13;
<script>
function checkEmail() {
    var x = document.getElementById("email");
      if(x.value.includes("@")){
      // do something or just continue
      }else{alert("Not valid email!")
      }

}
</script>
&#13;
&#13;
&#13;