Javascript 上传前如何验证图像大小?

Javascript 上传前如何验证图像大小?,javascript,image,validation,Javascript,Image,Validation,我想在上传图像之前验证图像大小和扩展。我有图像扩展的代码,我想限制图像的大小。 以下是图像扩展的代码: function ValidateFileUpload() { var fuData = document.getElementById('fileChooser'); var FileUploadPath = fuData.value; if (FileUploadPath == '') { alert("Please upload an imag

我想在上传图像之前验证图像大小和扩展。我有图像扩展的代码,我想限制图像的大小。 以下是图像扩展的代码:

function ValidateFileUpload() {
    var fuData = document.getElementById('fileChooser');
    var FileUploadPath = fuData.value;


    if (FileUploadPath == '') {
        alert("Please upload an image");

    } else {
        var Extension = FileUploadPath.substring(
                FileUploadPath.lastIndexOf('.') + 1).toLowerCase();



 if (Extension == "gif" || Extension == "png" || Extension == "bmp"
                || Extension == "jpeg" || Extension == "jpg") {


            if (fuData.files && fuData.files[0]) {
                var reader = new FileReader();

                reader.onload = function(e) {
                    $('#blah').attr('src', e.target.result);
                }

                reader.readAsDataURL(fuData.files[0]);
            }

        } 


  else {
            alert("Photo only allows file types of GIF, PNG, JPG, JPEG and BMP. ");

        }
    }
}
HTML代码

<input type="file" name="image"  id="fileChooser" style="height:28px; width:175px;" onchange="return ValidateFileUpload()">

您可以将此代码与测试过的HTML 5一起使用 演示:


var URL=window.URL | | window.webkitURL;
$(“#文件”).change(函数(e){
var图像、文件;
如果((file=this.files[0])){
图像=新图像();
image.onload=函数(){
警报(“图像宽度为“+this.width+”,图像高度为“+this.height”);
};
image.src=\u URL.createObjectURL(文件);
}
});
只需遵循此示例即可

并在用户输入具有所需文件大小范围的文件时提交表单

function ValidateFileUpload() {

var fuData = document.getElementById('fileChooser');
var FileUploadPath = fuData.value;


if (FileUploadPath == '') {
    alert("Please upload an image");

} else {
    var Extension = FileUploadPath.substring(FileUploadPath.lastIndexOf('.') + 1).toLowerCase();



    if (Extension == "gif" || Extension == "png" || Extension == "bmp"
                || Extension == "jpeg" || Extension == "jpg") {


            if (fuData.files && fuData.files[0]) {

                var size = fuData.files[0].size;

                if(size > MAX_SIZE){
                    alert("Maximum file size exceeds");
                    return;
                }else{
                    var reader = new FileReader();

                    reader.onload = function(e) {
                        $('#blah').attr('src', e.target.result);
                    }

                    reader.readAsDataURL(fuData.files[0]);
                }
            }

    } 


else {
        alert("Photo only allows file types of GIF, PNG, JPG, JPEG and BMP. ");
    }
}}
MAX_SIZE是您允许的最大文件大小。 你可以在下面我写的博客文章中找到一个很好的例子


我想在上述代码上添加图像大小验证可能的重复是否有任何可能的方法在上述扩展代码中添加图像大小限制???@indian,
webkitURL
回退是为了什么?
function ValidateFileUpload() {

var fuData = document.getElementById('fileChooser');
var FileUploadPath = fuData.value;


if (FileUploadPath == '') {
    alert("Please upload an image");

} else {
    var Extension = FileUploadPath.substring(FileUploadPath.lastIndexOf('.') + 1).toLowerCase();



    if (Extension == "gif" || Extension == "png" || Extension == "bmp"
                || Extension == "jpeg" || Extension == "jpg") {


            if (fuData.files && fuData.files[0]) {

                var size = fuData.files[0].size;

                if(size > MAX_SIZE){
                    alert("Maximum file size exceeds");
                    return;
                }else{
                    var reader = new FileReader();

                    reader.onload = function(e) {
                        $('#blah').attr('src', e.target.result);
                    }

                    reader.readAsDataURL(fuData.files[0]);
                }
            }

    } 


else {
        alert("Photo only allows file types of GIF, PNG, JPG, JPEG and BMP. ");
    }
}}