使用jquery validate和ajax进行表单验证并向后台提交数据

萧琛
2023-12-01

以前我都是在页面中点击submit按钮后提交给某个url一个post数据,使用validate后我们就可以使用html页面和js来异步的向后台提交数据,具体代码如下

ps:

个人小站点:四川耍耍网 重庆耍耍网 成都耍耍网 川渝耍耍网 四川论坛 重庆论坛 www.cysua.com

$("#form-product-add").validate({
		rules : {
			title : {
				required:true,
				minlength:2,
				maxlength:64
			},
			sell_point : {
				required:true,
				minlength:2,
				maxlength:64
			},
			price : {
				required:true,
				digits:true
			},
			number : {
				required:true,
				digits:true
			},
			image : {
				required:true,
				minlength:2,
				maxlength:64
			},
			cid : {
				required:true,
				minlength:2,
				maxlength:64
			}		
		},
		onkeyup:false,
		focusCleanup:true,
		success:"valid",
		submitHandler:function(form){
			$(form).ajaxSubmit({
				type: 'post',
				url: "/product",
				success: function(data){
					//获取父层
					var index = parent.layer.getFrameIndex(window.name);
					//刷新父层
					parent.location.reload();
					//关闭弹出层
					parent.layer.close(index);
				},
               			 error: function(XmlHttpRequest, textStatus, errorThrown){
					layer.msg('ERROR!',{icon:2,time:1000});
				}
			});
		}
	});			 error: function(XmlHttpRequest, textStatus, errorThrown){
					layer.msg('ERROR!',{icon:2,time:1000});
				}
			});
		}
	});

其中form-product-add是表单的id值,获取到jquery对象后调用validate方法,rules是验证规则比如,required是否可以为空,minlength和maxlength分别是最小长度和最大长度,digits是否一定为数字。

 

下面的submitHandler就是验证成功后提交表单数据,使用的ajaxSubmit方法进行提交,提交类型为post,url就是需要将表单提交的地址,后台接受成功后执行success方法,如果失败执行error方法。
 

 类似资料: