这是我到目前为止所拥有的
//file uploader
///////////////////////////
function uploader(){
var file = $(this).val()
var error = $(this).next('.req-error')
var fileLimit = $(this).attr('maxlength')-1
var uploadedFiles = $(this).siblings('.uploaded-file').length
//make uploaded file label
if(error.length ==1){
$(this).next().after('<div class="uploaded-file"><span>X</span>'+file+'</div>')
}else {
$(this).after('<div class="uploaded-file"><span>X</span>'+file+'</div>')
}
//count uploaded files
if(uploadedFiles >= fileLimit ){
$(this).attr('disabled', true)
}else{
$(this).removeAttr('disabled')
}
//clear input field
$(this).val('')
};
$(".input-file").change(uploader)
function removeFile(uploader){
$(this).remove()
}
$('.uploaded-file').live('click',removeFile)
我限制了可以上传的文件数量。达到限制后,输入将被禁用,但是,当文件被删除时,如果文件超出限制,我希望它再次启用。我只是不确定如何让removeFile函数从上传器函数中读取if语句。
答案 0 :(得分:0)
最好有一个代表已上传文件数量的计数器。将它放在与您的上传器和放大器相同的var中。 removeFile函数:
var uploadedFiles = 0;
function uploader() {
...
}
function removeFile() {
...
}
然后在添加/删除文件时递增/递减此变量。