2017-02-21 6 views
0

У меня есть большой текстовый файл с 2 миллионами записей, когда я загружаю его с помощью ajax, это занимает много времени, я хотел бы разбить его и последовательно загружать разделенные файлы.Как загрузить несколько файлов с помощью ajax?

Successive ajax loads

Я использую этот код, чтобы загрузить один большой файл, который я хочу разделить

$.ajax({ 
    url: "singleLargeFile.csv", 
    async: true, 
    success: function() { 
     process(); 
     }, 
    error: function(e) { 
     var errorMsg = e? (e.status + ' ' + e.statusText) : ""; 
     console.log(errorMsg); 
     }, 
    dataType: "text" 
    }); 

Есть ли способ загрузки нескольких файлов и каждый из них после загрузки триггеров и его обратного вызова и загрузка следующего файла?

Благодаря

ответ

0

На самом деле есть функция JQuery $.when() Я использовал это так:

var loadFile1 = $.ajax({ 
    url: "smallerFile1.csv", 
    async: true, 
    success: function() { 
     process1(); 
     }, 
    error: function(e) { 
     var errorMsg = e? (e.status + ' ' + e.statusText) : ""; 
     console.log(errorMsg); 
     }, 
    dataType: "text" 
    }); 


$.when(loadFile1).then(function(){ 
    var loadFile2 = $.ajax({ 
     url: "smallerFile2.csv", 
     async: true, 
     success: function() { 
      process2(); 
      }, 
     error: function(e) { 
      var errorMsg = e? (e.status + ' ' + e.statusText) : ""; 
      console.log(errorMsg); 
      }, 
     dataType: "text" 
     }); 
    }); 

Теперь process1 выполняется, когда первый файл будет загружен, а затем вторая нагрузка включается и так на

 Смежные вопросы

  • Нет связанных вопросов^_^