Uploadifive - onQueueComplete无法正常工作;限制队列和文件大小的选项也不起作用

时间:2013-07-30 17:18:11

标签: uploadify

我使用Uploadifive来处理文件上传。我的(非常标准)配置如下:

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

我有两个问题:

  1. uploadLimitqueueSizeLimit的选项似乎不起作用。我一次只能上传2个文件。如果我上传超过2,上传工作,但我得到很多弹出窗口(从check-exists.php生成)说该文件已存在于服务器上,我是否要替换它。
  2. onQueueComplete函数似乎针对每个文件上传运行,而不是在所有上载完成后运行一次。即,如果我上传10个文件,页面会刷新10次。
  3. 我正在运行最新版本的Firefox,我正在使用jquery版本1.4.4,而Firebug报告没有问题。

    任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

可能迟到回答这个问题,但它可以帮助别人。我通过使用&#39; onAddQueueItem&#39;来解决文件上传大小限制问题。事件。这是代码段。

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
        }
    }
});