2013-06-18 4 views
5

Ich verwende das manuelle Hochladen über Fine Uploader. Jetzt möchte ich überprüfen, ob die Datei ausgewählt wurde oder nicht.Wie kann ich die Anzahl der mit Fine Uploader ausgewählten Dateien prüfen?

$(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

Wo möchten Sie die Anzahl der ausgewählten Dateien überprüfen, und warum? –

Antwort

7

Da Sie nicht auf meine Frage geantwortet haben, ich werde einfach mal davon aus, dass Sie feststellen möchten, ob eine Datei ausgewählt wurde, bevor Sie uploadStoredFiles in Ihrem Click-Handler aufrufen.

Es ist wirklich sehr einfach. Verwenden Sie einfach die API-Methode getUploads. Zum Beispiel könnten Sie Ihre Click-Handler wie folgt aussehen ändern:

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

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

Noch ein paar Dinge:

  • Es gibt keine onLeave Option. Sie sollten dies aus Ihrem Code entfernen.
  • Die Option multiple ist standardmäßig true. Sie können dies auch aus Ihrem Code entfernen.
  • Sie verwenden bereits jQuery. Warum verwenden Sie das jQuery-Plug-in von Fine Uploader nicht? Anweisungen finden Sie in der Dokumentation.
+0

Danke Ray, das war hilfreich für mich! –

+0

Wenn dies Ihr Problem gelöst hat, denken Sie bitte daran, meine Antwort zu akzeptieren. –

+0

Ich bin nicht dieser Benutzer, aber hehe, ich habe Sie uplooted Antwort, aber das ist alles was ich tun kann hehe. Hey irgendeinen Grund, warum meine "qq" Variable kein .STATUS haben würde? –