mvc3 razor中对话框的jquery电子邮件验证

时间:2014-09-17 07:05:17

标签: jquery

如何为发送邮件添加正则表达式验证对话框..我已经设置了必需的字段验证器,我现在想要使用正则表达式验证它。它根本不能正常工作..需要你的帮助......提前谢谢。

$("#submit").click(function (e) {
    var email = $("#UserEmail").val();
    var emailReg = /^([a-zA-Z0-9_\.\-])+@\[a-zA-Z0-9\-]+\.([a-zA-Z0-9]{3})+$/;
    if (!emailReg.test(email)) {
        alert("Please Enter Valid Email Id");
        e.preventDefault();
    } else {
        alert("success");
    }
});

但是在上面的代码中,我在@符号上遇到错误。

3 个答案:

答案 0 :(得分:0)

试试这个,它有效:

var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
if(pattern.test("example@email.com")){
    alert("Valid email");
}else{
    alert("Invalid email");
}

就是这样。

答案 1 :(得分:0)

这应该有效:

http://fiddle.jshell.net/y1ugh71y/

var email = "myemail@yahoo.com"
    var emailReg = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
    if ((emailReg).test(email) == false) {
        alert("Please Enter Valid Email Id");
        e.preventDefault();
    } else {
        alert("success");
    }

请参阅此帖子以获取完美的电子邮件验证方法,因为通过JS验证并不总是安全的。

Validate email address in JavaScript?

答案 2 :(得分:0)

使用:

function validateEmail(mail) { 
    var validate = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
    return validate.test(mail);
}