Загрузка нескольких файлов с помощью AJAX JQuery это сохранить старые значения - PullRequest
0 голосов
/ 07 ноября 2019

Я пытаюсь выполнить загрузку нескольких файлов с помощью jquery, ajax и laravel, он отлично работает, когда я сохраняю первые выбранные файлы, но когда я пытаюсь изменить файлы Thoose и выбрать другие, он сохраняет старыезначения с дубликатами. Например, если я выбираю 4 файла в первый раз, а затем нажимаю на свой входной файл во второй раз, чтобы выбрать 3 файла, он сохраняет старые 4 файла, и если я закрываю модальный файл и открываю его во второй раз и нажимаюпри сохранении он сохраняет thous 4 файла, дублированные 2 раза Вот мой код:

//click on button newfile to show modal
$("#folder-files-list").on("click", ".newfile", function(e){
  $('#file_information').val("").empty("");

  //this is for showing the files before upload my input file is called file_information
  $("#modaluploadfile").on("change", "#file_information", function(e){
    var files = $(this).get(0).files;
    var list = Array();
    for (var i = 0, f; f = files[i]; i++) {
      list.push(f);
      $("#form_file_information").after(f.name);
    }
    //remove a specific file before upload
    $("#modaluploadfile").on("click", ".removeFile", function(e){
      e.preventDefault();
      var fileindex = $(this).attr("fileindex");
      list.splice(fileindex, 1);
      $(this).parents(".showFileInf").remove();
    });

    $("#modaluploadfile").on("click", "#addfile", function(e){
      e.preventDefault();
         //
        var formData=new FormData();
        for (var i = 0, f; f = list[i]; i++) {
          formData.append("file_information[]",f);
        }

        $.ajax({
          type : "POST",
          dataType:"json",
          url: 'files/upload',
          cache:false,
          contentType: false,
          processData: false,
          data: formData,
          success:function(data){
            console.log("good");
          }
        });
    });
  }); 
});
...