Blueimp上传插件进度条错误
我有一个表单,我使用blueimp上传插件上传文件。 上传过程正常。 我想要的只是为上传事件添加进度条。 我已经尝试使用blueimp文档中指定的progressall
回调,但我得到的是100%加载,因为data.loaded
总是等于data.total
。
我已经看到插件只在done
回调之后才处理progressall
回调,而在done
回调中我有几个动作正在发生。
见下面的示例:
$("#uploadFile" + docId).fileupload({ url: my url to the upload script, dataType : 'json', type: 'POST', formAcceptCharset: 'utf-8', forceIframeTransport: true, progressInterval: 100, bitrateInterval: 500, autoUpload: true, progressall: function (e, data) { var progress = parseInt(data.loaded / data.total * 100, 10); $('#progress'+docId+' .bar').css( 'width', progress + '%' ).text(progress + '%'); }, send : function(e, data) { if(data.files[0].size <= 9000000000){ var docId = $(this).attr("data-course-id"); $("#uploadFileForm"+docId+" .uploadProgress").removeClass("hidden"); $("#uploadFeedback").html(""); }else{ $("#uploadFeedback").html(file is too big); return false; } }, fail : function(e, data) { console.log("error = " + data.errorThrown); return false; }, done : function(e, data) { var metaSuggestions = data.result; $("#uploadFileForm"+docId+" .uploadProgress").addClass("hidden"); //enable save button $("#fileUploadSubmit"+ docId).removeClass("buttonDisabled"); $("#fileUploadSubmit"+ docId).removeAttr("disabled"); //populate fields $("#fileUploadedId"+docId).val(metaSuggestions.uploadedDocId); $("#fileDuration"+docId).val(metaSuggestions.lengthMiliseconds/1000 + " s"); $("#fileMediaType"+docId).val(metaSuggestions.mediaType); //change cancel action $("#fileUploadCancel"+ docId).unbind("click").click(function(){ var successCallbackCancel = function(data){ $("#uploadFileForm"+ docId).addClass("hidden"); } var errorCallbackCancel = function(error){ console.log(error); } cancelAddFile(contextPath, docId, metaSuggestions.uploadedDocId, successCallbackCancel, errorCallbackCancel); }); $("#fileUploadSubmit"+docId).unbind('click').click(function(){ var successCallbackSubmit = function(data){ $("#uploadFileForm" + docId).addClass("hidden"); //append file to files container var fileContainer = $("#files" + docId); appendFilesToContainer(data, docId); } var errorCallbackSubmit = function(error){ console.log(error); } submitFiles(contextPath, docId, metaSuggestions, successCallbackSubmit, errorCallbackSubmit); }); console.log("file done"); } });
我设法通过注释掉forceIframeTransport: true
来修复它forceIframeTransport: true
。 现在进度条完美运行!
- blueimp jquery-file-upload不会在不成功的添加上抛出错误
- blueimp jquery文件上传空文件上传结果struts2,文件项目为空
- 我应该返回什么来响应blueimp / jquery.file-upload-ui的删除事件上的show error消息
- 在webpack中导入Blueimp jQuery文件上传
- 由blueimp进行jQuery-File-Upload – 附加标题
- 为jQuery-File-Upload实现删除按钮
- 使用Jquery blueimp将图像上传到App Engine:
- Blueimp jQuery文件上传与数据库集成
- Jquery文件上传插件:如何在添加时validation文件?