Formstone上传maxQueue不起作用

时间:2015-08-06 20:42:28

标签: jquery upload limit progress

我正在使用这个插件jquery https://formstone.it/components/upload/,一切都很完美,但是...有一个选项来限制最大文件并且不起作用,称为" maxQueue"。

我的代码是:

var $filequeue,
    $filelist;

    $filequeue = $(".filelist.queue");
    $filelist = $(".filelist.complete");

    $(".upload").upload({
        label: "SUELTA AQUI",
        maxQueue: 1,
    }).on("start.upload", onStart)
      .on("complete.upload", onComplete)
      .on("filestart.upload", onFileStart)
      .on("fileprogress.upload", onFileProgress)
      .on("filecomplete.upload", onFileComplete)
      .on("fileerror.upload", onFileError);

function onStart(e, files) {
    console.log("Start");
    var html = '';
    for (var i = 0; i < files.length; i++) {
        html += '<li data-index="' + files[i].index + '"><span class="file">' + files[i].name + '</span><span class="progress">Cola</span></li>';
    }
    $filequeue.append(html);
}

function onComplete(e) {
    console.log("Complete");
    // All done!
}

function onFileStart(e, file) {
    console.log("File Start");
    $filequeue.find("li[data-index=" + file.index + "]")
              .find(".progress").text("0%");
}

function onFileProgress(e, file, percent) {
    console.log("File Progress");
    $filequeue.find("li[data-index=" + file.index + "]")
              .find(".progress").text(percent + "%");
}

function onFileComplete(e, file, response) {
    console.log("File Complete");
    if (response.trim() === "" || response.toLowerCase().indexOf("error") > -1) {
        $filequeue.find("li[data-index=" + file.index + "]").addClass("errorb")
                  .find(".progress").text(response.trim());
    } else {
        var $target = $filequeue.find("li[data-index=" + file.index + "]");
        $target.find(".file").text(file.name);
        $target.find(".progress").remove();
        $target.appendTo($filelist);
        console.log(response);
    }
}

function onFileError(e, file, error) {
    console.log("File Error");
    $filequeue.find("li[data-index=" + file.index + "]").addClass("errorb")
              .find(".progress").text("Error: " + error);
}

                            <div class="upload target" data-upload-options='{"action":"<?php echo get_template_directory_uri().'/inc/upload.php'; ?>", "maxSize": "1048576", "maxQueue": "1"}'></div>

一切都很完美,但没有限制,让你上传1,10,100或你想要的一切。

有什么不对?

1 个答案:

答案 0 :(得分:0)

maxQueue参数确定应并行上载的文件数,而不是可以完全上载的文件总数。您会注意到maxQueue设置为1,同时只发生一次上传。插件将在开始下一次传输之前等待第一次完成。