不知怎的,我的ajax submithandler代码不起作用。我希望只有当jquery validate()正确验证表单时,才能让用户提交表单(myForm)。
表单验证工作正常,但提交表单无法创建正确的响应,似乎重新加载网页。
我在http://www.malsup.com/jquery/form/#api和http://jqueryvalidation.org/validate/处查了一下,但无法弄清楚我的提交处理程序代码中的错误。
请你的帮助。
代码:
<script>
$(function() {
$("#myForm").validate({
rules: {
// simple rule, converted to {required:true}
'productname[]': {
required:true,
minlength: 2,
maxlength: 30,
}
}, //rules
// pass options to ajaxForm
submitHandler: function(myForm) {
var options = {
type: "POST",
url: "form_submit2ajx.php",
data: $("#myForm").serialize(),
dataType: "json",
success: function(msg){
$("#formResponse").removeClass('error');
$("#formResponse").addClass(msg.statusgeneral);
$("#formResponse").html(msg.statusgeneral);
},
error: function(){
$("#formResponse").removeClass('success');
$("#formResponse").addClass('error');
$("#formResponse").html("There was an error submitting the form. Please try again.");
}
}//var options
$('#myForm').ajaxForm(options);
$(this).ajaxSubmit();
return false;
}
}); //validate()
}); //function
</script>
答案 0 :(得分:0)
刚刚注意到这个
$('#myForm').ajaxForm(options);
$(this).ajaxSubmit();
反而尝试这种方式
$(this).ajaxSubmit(options);