输入时验证电子邮件

Man*_*iba 2 javascript jquery

我想按下回车键时验证电子邮件文本框.一个问题:当我按下输入时,文字消失,没有任何反应.

我的代码:

$(document).keypress(function(e) {
    if (e.which == 13) {
        mailcontrole();
    }
});

function mailcontrole {

    var mail = $("#email").val();
    if (IsEmail(mail) == false) {
        alert("false");
    }
}

function IsEmail(email) {
    var regex = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
    if (!regex.test(email)) {
        return false;
    } else {
        return true;
    }
}
Run Code Online (Sandbox Code Playgroud)

Miv*_*web 5

您有使用提交表单的默认行为ENTER.

$(document).keypress(function(e) {
    e.preventDefault();
    if (e.which == 13) {
        mailcontrole();
    }
});
Run Code Online (Sandbox Code Playgroud)

添加会e.preventDefault();停止此行为!

UPDATE

你的功能也不见了()(感谢Alex)!

function mailcontrole() {
    var mail = $("#email").val();
    if (IsEmail(mail) == false) {
        alert("false");
    }
}
Run Code Online (Sandbox Code Playgroud)