0

我对 ajaxUpload 有疑问。我想在文件上传期间调用 ajax 请求。

这是我生成引导文件输入的代码:

$("#form_csvFile").fileinput({
   maxFileSize: 10000,
   maxFileCount: 1,
   language: 'fr',
   dropZoneEnabled: false,
   showUploadedThumbs: true,
   showUpload: true,
   showUploadedThumbs: false,
   showPreview: false,
   browseClass: "btn btn-primary",
   removeClass: "btn btn-danger",
   uploadUrl: "{{ path('notation_import') }}",
   layoutTemplates: {
        progress: ""
   },
   ajaxSettings: {
       async: true
   }
}).on('filebatchuploaderror', function(event, data, previewId, index) {
   $("#progressValue").html("100%");
   $("#finalProgress .progress-bar").css('width', "100%");
   $("#finalProgress .progress-bar").prop('aria-valuenow', 100);
   $("#finalProgress .progress-bar").addClass("progress-bar-danger");
   clearInterval(myInterval);
}).on('filebatchuploadsuccess', function(event, data, previewId, index) {
   $("#progressValue").html("100%");
   $("#finalProgress").css('width', "100%");
   $("#finalProgress").prop('aria-valuenow', 100);
   $("#finalProgress").addClass("progress-bar-success");
   clearInterval(myInterval);
}).on('filepreajax', function(event, previewId, index){
   $("#finalProgress").show();
   myInterval = setInterval(function(){
       $.ajax({
           url: '{{ path('notation_ajax') }}',
           async: true,
           success: function (data) {
               if (data.percent == 100) clearInterval(myInterval);
               $("#progressValue").html(data.percent + "%");
               $("#finalProgress .progress-bar").css('width',data.percent + "%");
               $("#finalProgress .progress-bar").prop('aria-valuenow', data.percent);
            }
        });
    }, 1500);
});

在文档上传期间,我实现了一个 Javascript “setInterval()”方法来获取完成百分比(仅在 Json 中使用 ajax 调用女巫返回百分比)。

问题:引导文件输入发送的第一个请求上传我的文件阻止其他人...... 阿贾克斯请求

我尝试async = true在 ajax 设置和 getPercentage 请求中进行设置,但没有任何改变。有人对我有解决方案吗?

谢谢

4

0 回答 0