如何附加事件以在上传所有输入类型之前检查文件大小="文件"?

时间:2015-05-08 06:29:50

标签: javascript jquery file-type

我想将一个事件附加到所有输入类型="文件"在我的网站上检查文件大小是否优于5mo,如果是,则阻止上传并显示警告。有可能吗?

2 个答案:

答案 0 :(得分:1)

您可以使用jQuery绑定change事件:

$('input[type="file"]').change(function(){
    var f=this.files[0];
    var sizeInMb = f.size/1024;
    var sizeLimit= 1024*5; // if you want 5 MB
    if (sizeInMb > sizeLimit) {
        alert('Sorry the file exceeds the maximum size of 5 MB!');
        // reset the input (code for all browser)
        this.replaceWith(input.val('').clone(true));
        return false;
    }
    else {
        // go on
    }
}

希望这有帮助。

答案 1 :(得分:0)

你可以尝试如下:

<强> DEMO HERE

<强> HTML

<input type="file" id="myFile" />
<span class="err"></span>

<强> JS

$('#myFile').on('change', function(e) {
   if((this.files[0].size/1000) > 5120)
   {
       $('.err').text('File size limit exceeded');
       e.preventDefault();
   }
   else
      $('.err').text('');
});