uploadify 3.2 增加动态传参
今天上午开发多文件上传和解析excel的时候,遇到一个问题:上传过程中需要增加一些参数;
经过查阅uploadify 官网 ;需要增加formData字段,但是不能够简单的静态增加;需要在onUploadStart 中进行动态的设置;此时如果你初始化的时候已经存在过formData属性,则onUploadStart 中设置无效;
后端取值的话,可以使用
req.getParameter(name);//java $_post['name'] //进行取值;
详细见代码:
$("#uploadify").uploadify({
'swf' : 'styles/dwz/uploadify/uploadify.swf',
'buttonText':'选择文件 ',
'uploader' : 'admin/resume/import.do',
'fileObjName' : 'FileData',
"button_image_url": "admin/resume/button.action",
'auto' : false,
'fileTypeExts' : '*.xls; *.xlsx;',
'fileSizeLimit' : '100MB',
'multi' : true,
'queueID' : 'fileQueue',
'uploadLimit' : 999,
'width':89,
'height':18,
//'formData':{'importDate':'2012-03-04'}, 此时没有设置,则动态增加参数有效,如果没有注释该行,则下面onUploadStart中setting formData无效!
'queueSizeLimit' : 20,
'removeCompleted' : false,
'overrideEvents' : ['onSelectError','onUploadSuccess','onUploadStart'],
'onUploadSuccess' : function(file, data, response) {
navTabAjaxDone($.parseJSON(data));
},
'onSelectError' : function(file, errorCode, errorMsg) {
if(errorCode==SWFUpload.QUEUE_ERROR.QUEUE_LIMIT_EXCEEDED){
alert("一次只能上传20个文件!");
}else if(errorCode==SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT){
alert("上传文件必须小于100M!");
}else if(errorCode==SWFUpload.QUEUE_ERROR.INVALID_FILETYPE){
alert("只能上传xls,xlsx的office文件!");
}
},
'onUploadStart' : function(file) {
var importDate=$('#importDate').val();
$("#uploadify").uploadify("settings", "formData", {'importDate': importDate});//注意...
},
'onDialogClose': function(queueData){
}
});

浙公网安备 33010602011771号