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

时间:2024-10-26 00:07:44

根据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);
});
} });