用jquery.form.js 实现ajax提交含有上传文件和普通字段的表单

时间:2022-11-22 14:37:27

前两天用到ajax提交含上传图片的表单。实现的功能比较简单,但是使用ajax提交表单 form.serialize只能实现普通的字段提交,上传图片却不能使用。

网上很多都是推荐使用jquery.form.js先单独上传图片,返回上传后图片文件名再提交表单。但是我就是需要一起提交,发现jquery.form.js的ajaxSubmit()还挺好用,而且比单独上传图片更简单。


在此贴上代码实现:

js:

$("#ok").click(function() {
		
		$("#gp").ajaxSubmit({
			url : "xxx.action?action=saveOrUpdateObject",
			type : "post",
			dataType : 'json',
			success : function(data) {
				alert("设置成功!");
			},
			error : function(data) {
				alert("error:" + data.responseText);
			}
		});
	});

大概jsp代码:
<form id="gp" method="post" enctype="multipart/form-data">
<input type="text" name="" id="" />
<input type="file" name="" id="" accept="image/*"/>
<input type="button" id="ok" value="保存" />
</form>