2012-07-16 67 views
5

嗨我使用的上传文件的插件,我需要验证之前添加的文件数载的文件......像这样的事情上传前如何验证文件的最大数量?

 $('#fileupload').bind('fileuploadadd', function (e, data) { 
     filestoupload++; 
     var numOfDivs = $('.request').size(); 
     if (numOfDivs < filestoupload) { 
      upload = false; // Is just an example. 
     } 
    }); 

回答

1

这个工作对我来说,你的文件上传定义添加beforesend,有做验证

var maxfiles=3; 
$('#fileupload').fileupload(({ 
    url: postFileUrl, 
    submit: function (event, files) { 
     //check for max files THIS IS WHERE YOU VALIDATE 
     //console.log(files.originalFiles.length); 
     var fileCount = files.originalFiles.length; 
     if (fileCount > maxFiles) { 
      alert("The max number of files is "+maxFiles); 
      throw 'This is not an error. This is just to abort javascript'; 
      return false; 
     } 
    } 
    }); 

抛出是迄今为止不优雅,如果你happend到即时通讯解决这个问题,并找到一种方法来避免,请让我知道(现在是必要的或它会显示每个文件上传错误警报)

1

使用data.files.length

$('#fileupload').bind('fileuploadsubmit', function (e, data) { 
    var fileCount = data.files.length; 
    if (fileCount < filestoupload) { 
     upload = false; 
    } 
});