如何将图片上传大小限制在2mb以下?

var*_*aer 1 html javascript angularjs

我有一个select用于上传图像的html 选项.

<div class="row smallMargin">
<div class="col-sm-6">
  Attach Image
</div>
<div class="col-sm-6">
  <input type="file" ng-model="image" accept="image/*">
</div>
</div>
Run Code Online (Sandbox Code Playgroud)

如何限制用户上传大于2MB的图像?

DOT*_*eam 5

这个例子可以让你知道如何做到这一点:

HTML

<form  class="upload-form">
    <input class="upload-file" data-max-size="2048" type="file" >
    <input type=submit>
</form>
Run Code Online (Sandbox Code Playgroud)

JS

$(function(){
    var fileInput = $('.upload-file');
    var maxSize = fileInput.data('max-size');
    $('.upload-form').submit(function(e){
        if(fileInput.get(0).files.length){
            var fileSize = fileInput.get(0).files[0].size; // in bytes
            if(fileSize>maxSize){
                alert('file size is more than ' + maxSize + ' bytes');
                return false;
            }else{
                alert('file size is correct - '+fileSize+' bytes');
            }
        }else{
            alert('Please select the file to upload');
            return false;
        }

    });
});
Run Code Online (Sandbox Code Playgroud)