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

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

				});

			}

			

		}); 

  

 

你可能感兴趣的:(fileupload)