验证客户端AngularJS

时间:2015-07-03 07:33:45

标签: javascript angularjs

我希望在将图片尺寸上传到客户端本身的服务器之前对其进行验证。我尝试找到它的解决方案,但我可以找到img.Onload()的解决方案,我不是在寻找。

我只是希望用户从中选择图像{{{ 1}}选择文件后,只显示名称,如果图像大于172X152px,则应显示一些警告。我没有预览图像或任何东西。 “fileName(this)”函数给出了图像文件的名称,我无法获取图像的尺寸,因此无法验证它们。 PS,我在我的指令中定义了这个功能。

再次,我想在用户选择文件时显示警告,如果他的文件不符合上传条件,即大于172X152px。我没有在我的页面上加载图像文件或预览它。

1 个答案:

答案 0 :(得分:3)

我担心你必须使用Image.onLoad。但不要担心图像不需要在任何地方显示。

示例在这里Getting Image Dimensions using Javascript File API

    var fr = new FileReader;

    fr.onload = function() { // file is loaded
        var img = new Image;

        img.onload = function() {
            //TODO: Add your validation here
            alert(img.width); // image is loaded; sizes are available
        };

        img.src = fr.result; // is the data URL because called with readAsDataURL
    };

    fr.readAsDataURL(this.files[0]); // I'm using a <input type="file"> for demonstrating