现在位置首页 / 项目实战 /正文

plupload上传图片尺寸验证的2种方法

作者: IT小兵 | 2016年5月13日| 热度:℃ | 评论: |参与:

plupload是很强大的一个上传组件,支持html5,flash,silverlight,html4等语言插件。本文分享2个验证上传图片大小的方法。

1、浏览器客户端验证:

在支持 FileReader 的浏览器上可以做上传前校验,否则只能在上传后校验了

支持 FileReader 的浏览器上代码:

FilesAdded: function (up, files) {
        var reader = new FileReader();
        reader.readAsDataURL(files[0].getNative());
        reader.onload = (function (e) {
            var image = new Image();
            image.src = e.target.result;
            image.onload = function () {
                if (this.width < 1000 && this.height < 1000) {
                    uploader.start();
                } else {
                    console.log('尺寸不符')
                }
            };
        });
    }

2、服务器端验证(C#例子)

public static bool CheckFileTypeLimit(string type,string filepath)
        {
            bool isok = false;
            if (File.Exists(filepath))
            {
                FileInfo fileinfo = new FileInfo(filepath);
                switch (type)
                {
                    case "image"://大小: 不超过1M,    格式: bmp, png, jpeg, jpg, gif 
                        if (  fileinfo.Extension == ".JPG"
                                  || fileinfo.Extension == ".jpg"   
                            && fileinfo.Length / 1024 / 1024 < 1
                            )
                        {
                            isok = true;
                        }
                        break;
                    case "voice"://大小: 不超过5M, 长度:不超过60s, 格式: mp3, wma, wav, amr 
                        if (( fileinfo.Extension == ".amr")
                         && fileinfo.Length / 1024/1024 < 2
                         )
                        {
                            isok = true;
                        }
                        break;
                    case "video"://大小: 不超过20M, 格式: rm, rmvb, wmv, avi, mpg, mpeg, mp4
                        if ((  fileinfo.Extension == ".mp4" 
                      )
                       && fileinfo.Length / 1024 / 1024 < 10
                       )
                        {
                            isok = true;
                        }
                        break;
                    case "file"://大小: 不超过10M,    格式: txt, xml, pdf, zip, doc, ppt, xls, docx, pptx, xlsx 
                        if ((fileinfo.Extension == ".txt"
                       || fileinfo.Extension == ".xml"
                             || fileinfo.Extension == ".pdf" || fileinfo.Extension == ".zip" || fileinfo.Extension == ".doc"
                             || fileinfo.Extension == ".ppt" || fileinfo.Extension == ".docx" || fileinfo.Extension == ".pptx"
                                          || fileinfo.Extension == ".xlsx"
                             || fileinfo.Extension == ".xls")
                       && fileinfo.Length / 1024 / 1024 < 10
                       )
                        {
                            isok = true;
                        }
                        break;
                    default:
                        break;
                }
            }
            return isok;
        }


点击阅读本文所属分类的更多文章: 项目实战 。和高手一起交流:346717337
友荐云推荐

未注明转发、原文均为本站原创。分享本文请注明 原文链接

给您更多信息和帮助

在这里您可以找到更多:

技术交流群:346717337 Jquery插件交流

投稿:suchso@vip.qq.com

承接:企业网站门户/微网站/微商城/CMS系统/微信公众号运营/业务咨询

抢天猫双11红包
推荐使用阿里云服务器
echarts教程系列
本月最热文章

微信扫一扫,徜徉悠嘻网,您的休闲乐园

微信公众号:快乐每一天

随机文章
标签

技术交流群:346717337

投稿:suchso@vip.qq.com

专业专注:企业网站门户/微网站/微商城/CMS系统/微信公众号运营/付费问题咨询