对于电子邮件验证,此代码不起作用,我可以知道原因

时间:2013-11-07 06:14:23

标签: javascript

检查一下。在email field它甚至不接受单键击。根据我的知识错误,AllowRegex变量无法验证我在电子邮件字段中输入的内容..

function mailonly(e) {
    var code;
    if (!e) var e = window.event;
    if (e.keyCode) code = e.keyCode;
    else if (e.which) code = e.which;
    var character = String.fromCharCode(code);
    var AllowRegex = /^[\ba-zA-Z0-9\s-._ ]+@[a-zA-Z0-9\.\-]+\.[a-zA-Z]{2,4}$/;
    if (AllowRegex.test(character))
        return true;
    return false;

}

2 个答案:

答案 0 :(得分:1)

尝试在写完整个电子邮件地址后验证电子邮件。我认为您使用onblur

另外,我注意到您在电子邮件中允许\s(空格)不正确。您应该使用\S(CAP)。与\s相反。

\(DOT)之前也应该有一个./^[\ba-zA-Z0-9\S-\._]

答案 1 :(得分:0)

AllowRegex检查完成Email-Id不是单个字符,并且您正在检查每个按键上的文本 检查一下它会帮助你check 另一个例子是jsfiddle.net/bKT9W/2/

    function validateEmail() {

    var validEmail = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
    if (validEmail.test($('#user_email').val())) {
        $('.masked-check').fadeIn(300);
        $('#status').html('Valid Email!');
    }
    else {
        $('.masked-check').fadeOut(300);
        $('#status').html('INVALID Email!');
    }

}