Javascript jquery验证-使用enter键提交表单

Javascript jquery验证-使用enter键提交表单,javascript,jquery,Javascript,Jquery,我不熟悉javascript和jquery,我正在尝试提交一个表单,该表单使用jquery验证插件使用enter键进行验证。这是我的代码,但未提交表单,因为按enter键时未显示警报。我不确定到底发生了什么。我想当我按enter键时,页面只是被重新加载了。当然没有验证 <script> $(document).ready(function() { jQuery.validator.setDefaults({ errorPlacemen

我不熟悉javascript和jquery,我正在尝试提交一个表单,该表单使用jquery验证插件使用enter键进行验证。这是我的代码,但未提交表单,因为按enter键时未显示警报。我不确定到底发生了什么。我想当我按enter键时,页面只是被重新加载了。当然没有验证

<script>
    $(document).ready(function() {

        jQuery.validator.setDefaults({
            errorPlacement: function(error, element) {
                 error.appendTo('#invalid_' + element.attr('id'));

                  }
        });

        var validator = $("#login_form").validate({
            rules: {
                user_email: {
                  required: true,
                  email: true

                },
                password: {
                    required: true
                }
            },
            messages:{
                user_email:{
                    required:"Email required",
                    email: "Must be a valid email"
                },
                password: {
                    required: "Password required"
                }

            }, 


            submitHandler: function(form) {
            alert('submitted');
              $.ajax({
                type: "POST",
                url: "ajax/check_login.php",
                data: $(form).serialize(),
                timeout: 3000,
                success: function(resp) { 
                    if (resp == 'error') {
                        $('#login_error').html('Invalid login');
                    } else {


                        load_user_area();




                    }

                },
                error: function(e) {alert('failed' + e);}
              });
              return false;
            }

        });


$(document).keydown(function(e) { 
    if (e.keyCode == 13) { $('#login_form').submit(); }
});

});

</script>

$(文档).ready(函数(){
jQuery.validator.setDefaults({
errorPlacement:函数(错误,元素){
错误.appendTo('#invalid#'+元素.attr('id'));
}
});
var验证程序=$(“#登录表单”)。验证({
规则:{
用户电子邮件:{
要求:正确,
电子邮件:真的
},
密码:{
必填项:true
}
},
信息:{
用户电子邮件:{
必填:“需要电子邮件”,
电子邮件:“必须是有效的电子邮件”
},
密码:{
必需:“需要密码”
}
}, 
submitHandler:函数(表单){
警报(“已提交”);
$.ajax({
类型:“POST”,
url:“ajax/check_login.php”,
数据:$(表单).serialize(),
超时:3000,
成功:功能(resp){
如果(resp=='error'){
$(“#登录错误”).html(“无效登录”);
}否则{
加载用户区域();
}
},
错误:函数(e){alert('failed'+e);}
});
返回false;
}
});
$(文档).keydown(函数(e){
如果(e.keyCode==13){$('#login_form').submit();}
});
});

提前感谢您的帮助

当你点击“实际表单”按钮时,它是否正确提交?我建议你使用
keyup
而不是“keydown”发布表单的HTML会有所帮助。否则,我们如何知道您的选择器是否正确?请尝试使用
e.which
而不是
e.keycode
,因为这样可以解决浏览器兼容性问题。或者像这样的
var-keyCode=e.keyCode?e、 键码:e.charCode
@Mirko什么意思,
函数(e)
?这对于事件处理非常关键。