ajaxfileupload 多文件上传问题
一、修改官网ajaxfileupload.js:
//start----->修改前代码
/* var oldElement = jQuery('#' + fileElementId);
var newElement = jQuery(oldElement).clone();
jQuery(oldElement).attr('id', fileId);
jQuery(oldElement).before(newElement);
jQuery(oldElement).appendTo(form); */
//end----->修改前代码
//start----->修改后代码
for (var i = 0; i < fileElementId.length; i ++) {
var oldElement = jQuery('#' + fileElementId[i]);
var newElement = jQuery(oldElement).clone();
jQuery(oldElement).attr('id', fileElementId[i]);
jQuery(oldElement).attr('name', fileElementId[i]);
jQuery(oldElement).before(newElement);
jQuery(oldElement).appendTo(form);
}
//end------>修改后代码
效果截图
二、HTML 代码
三、jq 用法
$.ajaxFileUpload({
fileElementId : ["materialsspace","materialsfile"], //需要上传的文件域的ID,即<input type="file">的ID。
url : ' ${contextpath}/Materials/upload', //后台方法的路径
type : 'post', //当要提交自定义参数时,这个参数要设置成post
dataType : 'json', //服务器返回的数据类型。可以为xml,script,json,html。如果不填写,jQuery会自动判断。
data:{"info":info},//传入后台的数据
secureuri : false, //是否启用安全提交,默认为false。
async : false, //是否是异步
success : function(data) { //提交成功后自动执行的处理函数,参数data就是服务器返回的数据。
if (data.error && data.message) {
console.log(data.error + "//" + data.message);
popupError("错误", data.message);
} else {
alert("成功");
}
}
});
四、后台controller用法
五、spring 配置
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="1024000000"></property>
</bean>