jquery uploadify动态更新配置参数方法uploadifySettings()

1.使用scriptData给后台传参数的时候,必须声明'method': 'GET',因为默认是POST
2.$("#uploadify").uploadifySettings('scriptData',{'name':'liudong','age':22});动态更新配置参数
$("#uploadify").uploadify ({
'uploader'       : uploadify.swf',
'script'            : '../upload/doUpload.jsp',
'scriptData'     : {'name':'liudong','age': 20},
'method'         : 'GET',
'onSelect'         : function (event, queueID, fileObj){
$("#uploadify").uploadifySettings('scriptData',{'name':getName(),'age':getAge()});
}
});
或者在成功执行后的方法onComplete中动态设置参数:
onComplete: function (event, queueID, fileObj, response, data) {
var value = response ;    
$("#uploadify").uploadifySettings('scriptData',{'name':'liudong','age':value});      }

 

 

springMVC方式上传:
页面和其他两种方式一样,不需要改动,主要是后台action,增加参数MultipartFile uploadify(spring会自动帮我们封装);
例如:action处理中的上传处理方法为
    @RequestMapping(method = RequestMethod.POST, params = "action=upload")
    public String doPost(ModelMap model, MultipartFile uploadify,BindingResult result) {
      //上传文件名,要考虑编码问题,ajax默认上传UTF-8
      String fileName = file.getOriginalFilename();
      //有了文件流和文件名,接下来怎么做就不多说了
       //。。。
}
这里有必要提一下的是,传参的问题,如果是动态传参,简单的说就是页面你填写的信息,要和文件一起上传,就是动态传参:
例如:
一般上传的onclick方法:
jQuery('#uploadify').uploadifyUpload();

动态传参的onclick方法:
$('#uploadify').uploadifySettings('scriptData',{'bizType':$('#bizType').val(),'providerCode':$('#providerCode').val(),'subProviderCode':$('#subProviderCode').val(),'budgetInst':$('#budgetInst').val(),'memo':$('#memo').val()});jQuery('#uploadify').uploadifyUpload()
简单的说,就是用uploadifySettings函数在提交之前注入了参数。

posted on 2011-01-21 17:43  aXinNo1  阅读(7902)  评论(2编辑  收藏  举报