2013-08-23 72 views
0

我使用「allowedExtensions」選項時沒有任何問題,但有一種情況是我必須允許任何類型的擴展,但是兩種。FineUploader中的文件類型限制3.7.0

有沒有簡單的方法來做到這一點?我沒有在代碼中找到像'restrictedExtensions'這樣的選項。

感謝

+0

我已經更新了以下一些更加健壯的代碼不會失敗,如果文件名中有超過一個點,或者文件名是擴展名,或者文件的擴展名的情況下,沒有按我的回答完全符合限制延期的情況。 –

回答

1

從文檔:

validatevalidateBatch事件被拋出/被叫之前的違約金上傳驗證程序(在選項中定義)執行。

另外,如果您的驗證事件處理程序返回false,那麼Fine Uploader將會將該文件註冊爲無效並且不提交它。

以下是您可以在validate事件處理程序中嘗試的一些代碼。它還沒有經過測試,所以YMMV。

var notAllowedExts = ['pptx', 'xlsx', 'docx']; 

/* ... */ 

    onValidate: function (fileOrBlobData) { 
     var valid = true; 
     var fileName = fileOrBlobData.name || ''; 
     qq.each(notAllowedExts, function(idx, notAllowedExt) { 
      var extRegex = new RegExp('\\.' + notAllowedExt + "$", 'i'); 

      if (fileName.match(extRegex) != null) { 
       valid = false; 
       return false; 
      } 
     }); 
     return valid; 
    } 

/* ... */