2013-06-18 5 views
5

Sto utilizzando il caricamento manuale tramite Fine Uploader. Ora voglio controllare che il file sia selezionato o meno.Come posso controllare il numero di file selezionati con Fine Uploader?

$(document).ready(function() { 
    var fineuploader = new qq.FineUploader({ 
     element: $('#fine-uploader')[0], 
     request: { 
      endpoint: '<?php echo site_url('pl_items/upload_images');?>' 
     }, 
     multiple: true, 
     autoUpload: false, 
     onLeave: false, 
     validation: { 
      allowedExtensions: ['jpeg', 'jpg', 'gif', 'png'], 
      sizeLimit: 5120000 // 50 kB = 50 * 1024 bytes 
     }, 
     text: { 
      uploadButton: '<i class="icon-plus icon-white"></i> Select Files' 
     }, 
     template: '<div class="qq-uploader">' + 
        '<pre class="qq-upload-drop-area"><span>{dragZoneText}</span></pre>' + 
        '<div class="qq-upload-button btn btn-danger">{uploadButtonText}</div>' + 
        '<div class="qq-drop-processing span1"><span>{dropProcessingText}</span><span class="qq-drop-processing-spinner"></span></div>' + 
        '<div><ul class="qq-upload-list"></ul></div>' + 
        '</div>', 
     callbacks: { 
      onComplete: function(id, name, response) { 
       $('#frmDetails').append('<input type="hidden" name="pl_item_images[]" value="'+response.file_name+'">'); 
       //$("#frmDetails").submit(); 
      } 
     }, 
    }); 

    $('#submit_button').click(function() { 
     fineuploader.uploadStoredFiles(); 
    }); 
}); 
+0

Dove si desidera controllare il numero di file selezionati e perché? –

risposta

7

Poiché non hai risposto alla mia domanda, mi limiterò a presumo che si desidera determinare se è stato selezionato un file prima di chiamare uploadStoredFiles nel vostro gestore di clic.

È davvero molto semplice. Utilizza semplicemente il metodo API getUploads. Ad esempio, è possibile cambiare il vostro gestore clicca per assomigliare a questo:

$('#submit_button').click(function() { 
    var submittedFileCount = fineuploader.getUploads({status: qq.status.SUBMITTED}).length; 

    if (submittedFileCouunt > 0) { 
     fineuploader.uploadStoredFiles(); 
    } 
}); 

Un paio di cose:

  • Non v'è alcuna opzione onLeave. Dovresti rimuovere questo dal tuo codice.
  • L'opzione multiple è impostata su true. Puoi anche rimuoverlo dal tuo codice.
  • Si sta già utilizzando jQuery. Perché non stai utilizzando il plug-in jQuery di Fine Uploader? Vedere la documentazione per le istruzioni.
+0

Grazie Ray, questo mi è stato utile! –

+0

Se questo ha risolto il tuo problema, considera di accettare la mia risposta. –

+0

Io non sono quell'utente però hehe, ho upvoted la risposta, ma questo è tutto quello che posso fare hehe. Ehi, nessuna ragione per cui la mia variabile "qq" non avrebbe un .STATUS? –

Problemi correlati