2016-04-28 29 views
0

私は自分のウェブサイトにアップロードするためにdropzone.jsを使用しています。アップローダはモーダルであり、すべてのファイルが正常にアップロードされたときに自動的に終了します。私は次のコードを使用しています。これを行うためにすべてのファイルがいつdropzone.jsにアップロードされたかを確認する

buttonUpload.on("complete", function (file) { 

    var remaining = buttonUpload.getRejectedFiles().length + buttonUpload.getQueuedFiles().length + buttonUpload.getUploadingFiles().length 

    if (remaining == 0) { 
     $("#modal-upload-file").modal('hide'); 
    } 
}); 

を私は、このコードは失敗したファイルの数を一緒に加えることを期待する、まだアップロードしていないと、アップロードされています。これがゼロの場合、モーダルは閉じます。

buttonUpload.getRejectedFiles()にアップロード時にエラーが発生したファイルが含まれていないと判断できました。ドキュメンテーションを読んでから、私が望むようにすべてのファイルが正常にアップロードされたかどうかを確認する方法はありません。これどうやってするの?

+0

あなたが聞くことができるイベントがあります:http://www.dropzonejs.com/#event-queuecomplete –

+0

@ a.j。これは、たとえサーバーの一部で不正なhttpステータスが返されたとしても、すべてのファイルに対して試行が行われたときに発生します。 – freddinator

+0

どうすればオン・ハンドラのエラー・ファイルをカウントした後、event-queuecompleteを実行したら、そのカウントが0より大きいかどうかを確認してください –

答えて

0

私の解決策です。

成功したが、ファイルがキューから削除されます。キューが完了したときにすべてのファイルが残っている場合

buttonUpload.on("success", function(file) { 
    buttonUpload.removeFile(file); 
}); 

はその後、彼らは成功しませんでした。

buttonUpload.on("queuecomplete", function (file) { 
    if (buttonUpload.getAcceptedFiles().length > 0) { 
     $("#file-error-warning").slideDown(); 
    } else { 
     $("#modal-upload-file").modal('hide'); 
    } 
}); 
関連する問題