【发布时间】:2013-07-19 13:26:51
【问题描述】:
不知何故,我的 ajax 提交处理程序代码不起作用。我希望只有当 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>
【问题讨论】:
-
去掉
maxlength: 30后面的逗号 -
记错了,谢谢。但是,去掉逗号并不能解决问题
标签: jquery