我现在正在使用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
}
});
}
任何帮助非常感谢。 丹
答案 0 :(得分:0)
我的愚蠢。 Ajax函数调用的脚本的URL无效。我预计这会导致文件找不到类型响应而不是未定义。