我正在处理一个非常基本的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();
答案 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方法。
您可以在此处找到详细信息:
答案 2 :(得分:-1)
你正在考虑这样的事情:
JS
<script>
function checkEmail() {
var x = document.getElementById("email");
if(x.value.includes("@")){
// do something or just continue
}else{alert("Not valid email!")
}
}
</script>
&#13;