Jquery plugins 如何在JQuery文件上载插件中以编程方式取消队列中的文件?
当用户将文件添加到队列中时,我必须进行验证,因此我在回调中编写了一个函数:Jquery plugins 如何在JQuery文件上载插件中以编程方式取消队列中的文件?,jquery-plugins,file-upload,queue,Jquery Plugins,File Upload,Queue,当用户将文件添加到队列中时,我必须进行验证,因此我在回调中编写了一个函数: $(document).ready( function() { $('#fileupload').bind('fileuploadadd', function (e, data) { $.each(data.files, function (index, file) { check = ValidaDoc(file.name); if (check!="OK"){
$(document).ready( function() {
$('#fileupload').bind('fileuploadadd', function (e, data) {
$.each(data.files, function (index, file) {
check = ValidaDoc(file.name);
if (check!="OK"){
var erro="";
if (check=="Alerta1"){
alert("Alerta1");
}
else {
errotemp="";
if(check=="Erro1"){erro=erro + file.name + " com extensão não esperada.";}
else if(check=="Erro2"){erro=erro + file.name + " não cadastrado ou com nome fora do padrão.";}
$($('#fileupload .files .cancel button')[index]).click();
}
}
});
});
回调有效,ValidaDoc函数有效,文件被取消,但不是正确的文件。我认为使用索引是不对的。有人有想法吗?问题是我对索引的理解有误。我将调用click的行替换为下面的一个命令行,所有操作都正常
$($('#fileupload .files .cancel button')[data.context[index].rowIndex]).click();
我也必须改变这个事件。调用fileuploadadd时,该文件还不在表中。所以改为文件上传
$('#fileupload').bind('fileuploadadded', function (e, data) {
我想我明白了。此索引用于$,每个函数不是表中的文件顺序。所以我重写了点击按钮:“$($)#fileupload.files.cancel按钮”)[data.context[index.rowIndex])。点击();“我已经找了好几个小时了,你太棒了!!