2

检查这个。在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;

}
4

2 回答 2

1

写完完整的电子邮件地址后,尝试验证电子邮件。我想你用onblur它。

我还注意到您\s在电子邮件中允许(空格)不正确。您应该改用\S(CAP)。这与\s.

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

于 2013-11-07T06:22:07.453 回答
0

AllowRegex 检查完整的电子邮件 ID 不是单个字符,并且您正在检查每次按键时的文本。
检查这个它会帮助你检查它。
另一个例子是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!');
    }

}
于 2013-11-07T08:40:59.613 回答