2015-11-04 52 views
0

如果文檔丟失,我想暫停fineuploader是一個pdf,在繼續之前爲最終用戶提供一些選項。我無法弄清楚如何讓暫停觸發。我得到[Fine Uploader 5.3.2]忽略文件ID 0(DEVELOPMENT.PDF)的暫停。沒有進行中。FineUploader暫停,如果PDF

我的代碼如下。

var uploader = new qq.s3.FineUploader({ 
     debug: true, 
     element: document.getElementById('fine-uploader'),  
     request: { 
      endpoint: 'bucketname.s3.amazonaws.com',   
      accessKey: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' //zone-user key id   
     }, 
     signature: {      
      endpoint: "/assets/plugins/fine-uploader/signature/endpoint.php" 
     }, 
     debug:true, 
     cors: {expected: true}, 
     chunking: {enabled: true}, 
     resume: {enabled: true},  
     deleteFile:{enabled:false}, 
     validation: { 
      itemLimit: 5, 
      sizeLimit: 15000000 
     }, 
     uploadSuccess:{ 
      //endpoint:"/assets/plugins/fine-uploader/signature/endpoint.php?success" 
     }, 
     callbacks: {   
      onSubmitted: function(id, name) {    
       var fileName = name; 
       var fileExtension = fileName.substring(fileName.lastIndexOf('.') + 1).toUpperCase(); 
        if(fileExtension==='PDF'){ 
         alert('it IS pdf... now what?'); 
         jQuery('#confirmPDFHandler').modal(); 
         uploader.pauseUpload(id); //not pausing here       
        }else{ 
         alert('its not a pdf... go!'); 
         uploader.continueUpload(id); 
        } 
      }, 
      onError: function(id, name, errorReason, xhrOrXdr) { 
       //alert(qq.format("Error on file number {} - {}. Reason: {}", id, name, errorReason)); 
      }, 
      onUpload: function(id, name, isError,responseJSON) { 
       var obj = JSON.stringify(responseJSON); 
       //alert(name + 'is in progress'); 
      }, 
      onComplete: function(id,fileId,responseJSON){ 
       var newfilename=uploader.getKey(id);      
      } 
     }, 
     retry: {enableAuto: false} 
    }); 
+0

您無法暫停尚未開始的上傳。你對你的用戶有什麼要求?您將如何使用用戶的輸入來影響上傳? –

+0

我們正在開發PDF拆分器。如果用戶在上傳器中下載PDF文件,我們將給他們一個選擇,以簡單上傳(像往常一樣繼續)或分割文件(暫停或停止上傳並運行我們單獨的自定義代碼來開始PDF拆分選項,將一個文件拖入然後將這些文件傳遞給上傳者)。希望這是有道理的。我考慮過禁止PDF並分別處理它們,但是我希望他們選擇繼續,如果沒有必要的分割。 –

回答

0

如果用戶滴在上傳PDF文件,我們會給他們一個選項,只需上傳(如常)或分割的文件(暫停或停止上載和運行我們的獨立的自定義代碼開始PDF拆分選項拉動一個文件分成多個文件,然後通過那些上傳者)

聽起來像是你想有可能取消上傳,或繼續進行。在這種情況下,您應該要求用戶輸入一個onSubmitonValidate事件處理程序。 Your handler should return a Promise and either resolve the promise to allow the file to go through, or reject it to cancel the file submission。例如:

onSubmit: function(id) { 
    return new Promise(function(resolve, reject) { 
     // popup modal 
     // when user responds... 
     // ...call resolve() if they want to upload the file 
     // ...or reject() if they want to cancel the file 
    }); 
} 

Fine Uploader有一個非常小的「承諾」實現與庫捆綁在一起。這是非標準的,所以你最好找到一個標準的A +實現。

+0

是的!這很好用!謝謝。 –