2012-09-06 26 views
20

Codeiniter ile bir sonraki projem için JQuery file upload demo kullanıyorum.JQuery'deki dosya türlerini kısıtlama Dosya yükleme demou

  • .zip'teki ve Yüklenen dosyaların listesini (JQuery dosya yükleme eklentisi listesini görüntüler temizleme
  • dosya boyutunu sınırlama
  • .rar için yükleme dosya türlerini kısıtlamak: Herkes ben şu elde nasıl bana söyleyebilir önceden yüklenen dosyaların sayısı)

Yardımcı oldu !!

+1

Sunucu tarafındaki tüm bu kısıtlamaları/doğrulamaları da yaptığınızdan emin olun. –

cevap

-2

bu hat bakmayı deneyin:

process: [ 
      /* 
       { 
        action: 'load', 
        fileTypes: /^image\/(gif|jpeg|png)$/, 
        maxFileSize: 20000000 // 20MB 
       }, 
       { 
        action: 'resize', 
        maxWidth: 1920, 
        maxHeight: 1200, 
        minWidth: 800, 
        minHeight: 600 
       }, 

jquery.fileupload-fp.js içinde

3

resmi belgelere göre; jquery.fileupload-ui.js düzenleme ise

$('#file_upload').fileUploadUIX({ 
    maxFileSize: 5000000, // Maximum File Size in Bytes - 5 MB 
    minFileSize: 100000, // Minimum File Size in Bytes - 100 KB 
    acceptFileTypes: /(zip)|(rar)$/i // Allowed File Types 
}); 
4

bu kısmı:

$.widget('blueimp.fileupload', $.blueimp.fileupload, { 

    options: { 
     // The maximum allowed file size: 
     maxFileSize: 100000000, 
     // The minimum allowed file size: 
     minFileSize: undefined, 
     // The regular expression for allowed file types, matches 
     // against either file type or file name: 
     acceptFileTypes: /(zip)|(rar)$/i, 
     ---------------------------------------------------------------- 

yüklenen dosyaların listesini temizlemek için - Eğer gerekmiyorsa main.js dan $ .GetJSON aramayı kaldır Bu işlevsellik.

62

Muhtemelen çok sayıda çözümünüz var, ancak jQuery yükleyici için BASIC eklentisini kullanmak istedim, yani başka bir betik olmadan .. bir sebepten dolayı maxFileSize/fileTypes seçenekleri çalışmadı - Belgeleri okumamdan şüphe duyuyorum! (Benim durumumda) dosya boyutunu sadece regex görüntü türlerine izin vermek için sadece ADD seçeneğini kullanarak Yani

add: function (e, data) { 
     var goUpload = true; 
     var uploadFile = data.files[0]; 
     if (!(/\.(gif|jpg|jpeg|tiff|png)$/i).test(uploadFile.name)) { 
      common.notifyError('You must select an image file only'); 
      goUpload = false; 
     } 
     if (uploadFile.size > 2000000) { // 2mb 
      common.notifyError('Please upload a smaller image, max size is 2 MB'); 
      goUpload = false; 
     } 
     if (goUpload == true) { 
      data.submit(); 
     } 
    }, 

ve kontrol:

benim için neyse

, aşağıdaki yapıyor gibi hızlı oldu maksimum 2mb'dir.

Oldukça basit ve yine ben MAXFILESIZE seçenekleri sadece ben sadece temel eklenti script jquery.fileupload.js dahil ediyorum, işe eminim

ben sadece yüklüyorum benim durumumda ekledi olmalıdır DÜZENLEME tek bir dosya (bir profil görüntüsü) böylece data.files [0] .. tabii ki dosya koleksiyonu ile yineleyebilirsiniz.

+0

Sonunda! Çalışılan bir örnek için çok şey arıyorum. Thx :) – william

+0

@william Hoş Geldiniz –

+0

'data.submit()' çoklu dosyalar için nasıl çalışır? Dosya başına – Hengjie