Valums File Uploader计数在处理之前

时间:2012-01-28 01:26:29

标签: ajax file upload count

我现在正在使用Valums文件上传器,效果很好,但我想要做的是修改它,以便计算目标目录中的文件数量,以检查已经存在少于指定数量的文件在处理之前......

..所以我以为我会在onSubmit位(不确定技术名称)中放入一个简单的ajax函数来检查并返回true或false(返回false中止上传过程),具体取决于结果文件数量。我发现这个ajax调用因为某些原因而被中止(根据FireBug),每次我上传一个文件时,错误有助于返回为“undefined”。

我想知道的是,如果Valums上传器的某些怪癖不允许在onSubmit位上进行ajax调用....或者我只是错了。

代码:

function createUploader(){

var uploader = new qq.FileUploader({
    element: document.getElementById('file-uploader'),
    action: '/Scripts/FileUploader/server/uploadprocess.php',
    debug: true,
    multiple: true,
    autoUpload: true,
    dragDrop: true,
    params: {
        UpType: UpType,
        UpRef: UpRef,
        Thumb: Thumb
    },

            onSubmit: function(id, fileName){

                // --- This is my check that's getting aborted ----
                // --- Made this async because I want it do do this first, not sure if right though ---

                var NumFiles = $.ajax({
                    type: "GET",
                url: "CountImages.php",
                async: true,
                cache: false,
                dataType: 'text',
                data: "UpType=blaUp&UpRef=blaRef",
                error: function(XMLHttpRequest, textStatus, errorThrown) {         

                        // --- Ajax failed ---
                            alert("Oh Dear: " + textStatus + " and errorThrow: " + errorThrown.Status);
                        // --- showing "Oh Dear: error and errorThrow: undefined" ---
                    }
                }).responseText;

                if (NumFiles === "False")
                {
                    return false;
                }

            },

            onComplete: function(id, fileName, responseJSON){

                // Do stuff

            }
});

}

任何帮助非常感谢。 丹

1 个答案:

答案 0 :(得分:0)

我的愚蠢。 Ajax函数调用的脚本的URL无效。我预计这会导致文件找不到类型响应而不是未定义。