2017-03-21 3 views
0

J'essaie de télécharger un fichier lorsqu'un utilisateur clique sur un bouton. La question est dans le 2ème bloc de codeTypeError non intercepté: Impossible de lire la propriété 'longueur' du téléchargement de fichier non défini. Dropzone JS

Dropzone.options.myDropzone = { 

    autoProcessQueue: false, 

    init: function() { 
     var submitButton = document.querySelector("#submit-all") 
     myDropzone = this; 

     submitButton.addEventListener("click", function() { 
      myDropzone.processQueue(); 
     }); 


     this.on("addedfile", function() { 

     }); 

    } 
}; 

est au-dessus de mon créer une nouvelle section de dropzone, et en bas est mon logic.I obtenir une erreur sur ma boucle. la longueur est indéfinie

$("#submit-all").click(function (e) { 
    $('#myPleaseWait').modal('show') 
    var fileUpload = $("#files").get(0); 
    var files = this.file; 
    var data = new FormData(); 
    var _url = $(this).data('appcontroller'); 
    for (var i = 0; i < files.length ; i++) { //Error is stopping here when upload button is pressed 
     data.append(files[i].name, files[i]); 
    } 
    $.ajax({ 
     type: "POST", 
     url: _url, 
     contentType: false, 
     processData: false, 
     data: data, 
     success: function (message) { 
      $('#myPleaseWait').modal('hide'); 
      alert(message); 
     }, 
     error: function() { 
      $('#myPleaseWait').modal('hide'); 
      alert("There was error uploading files!"); 
     } 
    }); 
}); 

J'ai ajouté un violon js avec mon code html https://jsfiddle.net/q47axhdf/2/

Toute aide serait grandement appréciée

+0

'var files = fileUpload.file;' devrait être 'var files = fileUpload.files;' –

+0

hi rory, j'ai oublié de changer cela en this.files, c'est pourquoi je reçois ma longueur undefined err message –

+0

Donc dites-vous que c'est maintenant réparé? –

Répondre

0

Comme toujours trouvé la réponse après avoir affiché ce sujet. J'ai retiré .length de mon file.length dans la boucle for et le téléchargement fonctionne parfaitement.