注册时Jquery电子邮件验证

时间:2016-02-13 08:19:56

标签: javascript jquery html regex

我需要在提交前验证用户电子邮件地址。我在网上发现了这个正则表达式,但我不知道如何使用它,因此它可以与我的jquery一起使用。 有人可以为我编译这段代码吗?我不知道该怎么做。

这是我的代码

Jquery的

$(document).ready(function() {
    var mail = $('input[name=email]');

    $('input[type="email"]').keyup( function() {
        if(mail.val() !=) {
            $('#validate').html("Invalid email");
        } else {
            $('#validate').html("Valid");
        }
        // ...
    });
});

REGEX PATTERN

function isValidEmailAddress(emailAddress) {
    var pattern = /^([a-z\d!#$%&'*+\-\/=?^_`{|}~\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+(\.[a-z\d!#$%&'*+\-\/=?^_`{|}~\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+)*|"((([ \t]*\r\n)?[ \t]+)?([\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]|\\[\x01-\x09\x0b\x0c\x0d-\x7f\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))*(([ \t]*\r\n)?[ \t]+)?")@(([a-z\d\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]|[a-z\d\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF][a-z\d\-._~\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]*[a-z\d\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])\.)+([a-z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]|[a-z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF][a-z\d\-._~\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]*[a-z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])\.?$/i;
    return pattern.test(emailAddress);
};

我不知道如何让它为我工作? 或者,如果您有任何其他更简单的方式存档,请为我做。

1 个答案:

答案 0 :(得分:0)

使用以下代码验证电子邮件地址。希望它会有所帮助。

$(document).ready(function() {
    var mail = $('input[name=email]');
    var value = mail.val();
    $('input[type="email"]').keyup( function() {
        if(!validateEmail(value)) {
            $('#validate').html("Invalid email");
        } else {
            $('#validate').html("Valid");
        }
        // ...
    });
});

和正则表达式

function validateEmail(value) {
    var emailtest = /^\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b$/i;
    return emailtest.test(value);
}