jquery.fileupload插件 ie9下不支持上传

潘刚洁
2023-12-01

根据https://github.com/blueimp/jQuery-File-Upload/wiki/Browser-support

The following browsers support at least one form of AJAX style file uploads, either via XHR or via the Iframe Transport:

Desktop browsers

  • Google Chrome
  • Apple Safari 4.0+
  • Mozilla Firefox 3.0+
  • Opera 11.0+
  • Microsoft Internet Explorer 6.0+

1、要支持上传.必须支持AJAX style file uploads, either via XHR or via the Iframe Transport,

这三种中的一种,所以我选择了最后一种Iframe Transport,根据Iframe Transport链接下的地址https://cmlenz.github.io/jquery-iframe-transport/

1、下载jquery.iframe-transport.js。然后引入该js文件

2、根据 https://cmlenz.github.io/jquery-iframe-transport/

加入参数对于ie10以下的浏览器加入参数:iframe=true

var url = ctx   + fileServiceURL.saveFiles;//上传文件的地址
          
         var iframe = false;
            if($.browser.msie  && $.browser.version < 10){ 
                iframe = true;
            }
      
        $('#' + _this.ctlID ).fileupload({
            url: url,
            //forceIframeTransport: forceIframeTransport,
             iframe: iframe,
            dataType: 'json',
            //datatype: dataType,
            autoUpload: true,
            //sequentialUploads : true,
            formData: {signUploadFile: _this.signature},
            maxFileSize: 5000000, // 5 MB
            previewMaxWidth: 100,
            previewMaxHeight: 100,
            previewCrop: true
        }).on('fileuploadadd', function (e, data) {
              
            pageLock("show");
        }).on("fileuploadsubmit", function(e, data){
            if(_this.signature && !_this.validSignatureUSB()){
                pageLock("hide");
                return false;
            }
            return true;
        }).on('fileuploaddone', function (e, data) {
            pageLock("hide");
            if((typeof data.result) == "undefined"){
                oAlert("不支持上传该格式的文件");
            }else{
                $.each(data.result.data, function(index){
                    //console.log("new file " + this.fileID);
                    _this.addFile(this.filename, this.fileID,  this.contentType, this.digestValue,  this.digestAlgorithm,  this.certificate, true);
                });
            }
              
        }).on('fileuploadfail', function (e, data) {
            pageLock("hide");
            if((typeof data.result) == "undefined"){
                oAlert("可能您上传的文件格式不被支持!!!");
            }else{
                $.each(data.result.files, function (index, file) {
                    var error = $('<span/>').text(file.error);
                    $(data.context.children()[index])
                        .append('<br>')
                        .append(error);
                });
            }
             
        });

 类似资料: