使用regex jqueryvalidation电子邮件
提到这个问题:
如何使用jquery为字段设置最小长度?
使用jquery为字段设置最小长度的代码?
$('#new_invitation').submit(function(event) { if ($('#invitation_form_recipients input').filter(function() { return $(this).val(); }).length == 0) { // all the fields are empty // show error message here // this blocks the form from submitting event.preventDefault(); } });
如何validation每个字段输入是否具有jquery的有效电子邮件地址? 在上面的代码?
谢谢!
解决方案!
$('#new_invitation').submit(function(e) { $('#invitation_form_recipients input').each(function(e) { email_address = $(this); email_regex = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/i; if(!email_regex.test(email_address.val())){ alert('this is not valid email'); e.preventDefault(); return false; } }); });
您可能希望使用像此处所述的正则表达式来检查格式。 提交表单后,在每个字段上运行以下测试:
var userinput = $(this).val(); var pattern = /^\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[AZ]{2,4}\b$/i if(!pattern.test(userinput)) { alert('not a valid e-mail address'); }
此正则表达式可以帮助您根据gmail.com使用的所有条件检查您的电子邮件地址。
var re = /^\w+([-+.'][^\s]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/; var emailFormat = re.test($("#email").val());// this return result in boolean type if (emailFormat) {}
function mailValidation(val) { var expr = /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/; if (!expr.test(val)) { $('#errEmail').text('Please enter valid email.'); } else { $('#errEmail').hide(); } }