2013-07-30 3 views
1

Я использую Uploadifive для обработки загрузки файлов. Мой (очень стандартная) конфигурация выглядит следующим образом:Uploadifive - onQueueComplete Не работает правильно; Параметры для ограничения размера очереди и файла также не работают

<form> 
<div id="queue"></div> 
<div ><input id="file_upload" name="file_upload" type="file" multiple="true"></div> 
<div class="uploadifive-button"><a href="javascript:$('#file_upload').uploadifive('upload')">Upload Files</a></div> 
</div>   
</form> 


<script type="text/javascript"> 
<?php $timestamp = time();?> 

$(function() { 
$('#file_upload').uploadifive({ 
    'auto'    : false, 
    'checkScript'  : 'check-exists.php', 
    'formData'   : {'timestamp' : '<?php echo $timestamp;?>', 
        'token'  : '<?php echo md5('unique_salt' . $timestamp);?>' 
       }, 
    'queueID'   : 'queue', 
    'removeCompleted' : true, 
    'queueSizeLimit' : 10, 
    'uploadLimit'  : 0, 
    'uploadScript'  : 'uploadifive.php', 
    'onUploadComplete' : function(file, data) {function goes here},    'onQueueComplete' : function() { location.reload(); } 
     }); 

    }); 
</script> 

У меня есть 2 проблемы:

  1. варианты для uploadLimit и queueSizeLimit, похоже, не работает. Я могу загружать только 2 файла за раз. Если я загружаю более 2, загрузка работает, но я получаю много всплывающих окон (сгенерированных из check-exists.php), говорящих, что файл уже существует на сервере, я хочу его заменить.
  2. Функция onQueueComplete, похоже, запускается для каждой загрузки файла, а не один раз после завершения всех загрузок. I.e., если я загружаю 10 файлов, страница обновляется 10 раз.

Я использую последнюю версию Firefox, я использую jQuery версии 1.4.4, и Firebug не сообщает о проблемах.

Любая помощь приветствуется.

ответ

0

Возможно, поздно ответить на этот вопрос, но это может помочь кому-то другому. Я получил ограничение по размеру загрузки файлов, используя событие «onAddQueueItem». Вот фрагмент кода.

var bytesLoaded = 0; 
$("#file_upload").uploadifive({ 
    .... 
    'onAddQueueItem' : function(file) { 
     bytesLoaded += file.size; 
     //setting maximum upload to 20MB 
     if(bytesLoaded > (20*1024*1024)){ 
      alert"The file uploaded is greater than 20MB."); 
      cancel(); //cancel button ensures the upload is not done 
     } 
    } 
}); 

 Смежные вопросы

  • Нет связанных вопросов^_^