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

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;
        }

第一个例子在前段验证, 例子二是在后段验证了

时间: 2024-09-12 18:55:22

jquery plupload上传图片尺寸验证的方法的相关文章

Laravel 5.3新增上传图片尺寸验证规则介绍

在 Laravel 5.3 中,新增了一个表单验证选项:上传图片的图片尺寸,该验证规则名称为 dimensions ,你可以传递如下参数到验证规则: min_width:宽度比这个尺寸窄的图片将会被拒绝 max_width:宽度比这个尺寸宽的图片将会被拒绝 min_height:高度比这个尺寸矮的图片将会被拒绝 max_height:高度比这个尺寸高的图片将会被拒绝 width:宽度不等于这个尺寸的图片将会被拒绝 height:高度不等于这个尺寸的图片将会被拒绝 ratio:宽高比不等于这个值的

jQuery Validate让普通按钮触发表单验证的方法_jquery

 一般的表单校验都是直接注册在页面上的匿名函数,导致只能通过固定的提交方式触发表单校验,如果想自定义一个按钮触发表单校验如何实现呢? 目前写法: $(function(){ $("#form").validate({ rules : { user_name : { required : true }, -- }, messages : { user_name : { required : '用户名必填', }, -- } }); }); 改写方法: //编写表单验证函数validfor

jquery实现用户信息修改验证输入方法汇总_jquery

本文实例讲述了jquery实现用户信息修改验证输入方法.分享给大家供大家参考.具体如下: var realnameFlag = 0; var addressFlag = 0; var zipFlag=0; var cellphoneFlag=0; var homephoneFlag=0; var oldpasswordFlag=1; var newpasswordFlag=1; //判断email function check_email() { $("#showSpan").hide

php修改上传图片尺寸的方法_php技巧

本文实例讲述了php修改上传图片尺寸的方法.分享给大家供大家参考.具体实现方法如下: <?php // This is the temporary file created by PHP $uploadedfile = $_FILES['uploadfile']['tmp_name']; // Create an Image from it so we can do the resize $src = imagecreatefromjpeg($uploadedfile); // Capture

jquery.validate表单验证插件使用方法解析_jquery

为什么要用jquery validate这个表单验证插件:自己写一个通用且功能全面强大的jquery表单验证插件并不容易.jquery validate这个jquery插件几乎可以轻松应对95%以上的表单验证,具体内容如下 使用方式 1.在控件中使用默认验证规则,例子: 电子邮件(必填) <input id="email" class="required email" value="email@" /> 2.可以在控件中自定义验证规则

JQuery.validationEngine表单验证插件(推荐)_jquery

 一.说明 jQuery.validationEngine表单验证控件功能强大,自带了样式显示模式: 1.字符类型:非空验证.最大长度.最小长度.相等判断.数字和空格.数字和英文字母 2.数字类型:数字.整数.最大值.最小值 3.日期类型:日期(yyyy-MM-dd/ yyyy/MM/dd等).日期+时间.最小日期.最大日期.日期时间段 4.业务字段:url.email.phone.ipv4:ciaoca版扩展支持:qq.邮政编码.身份证.汉字. 5.Ajax后台验证:支持全局扩展定义,后台可定

Jquery教程:JQUERY对于元素尺寸及位置定义

文章简介:最近小剧在学习JQUERY的一些应用,接触到了JQUERY对于元素尺寸及位置定义,还有就是配合浏览器尺寸及状态的计算所做出的一些动画特效.其实像这类JQUERY应用无外乎涉及这些属性的调用:innerHeight().innerWidth().outerHeight().outerHeight(true).outerHeight(fal 最近小剧在学习JQUERY的一些应用,接触到了JQUERY对于元素尺寸及位置定义,还有就是配合浏览器尺寸及状态的计算所做出的一些动画特效.其实像这类J

PHP jQuery Ajax提交与验证form表单详解

PHP jQuery Ajax Form 表单提交与验证实例解析,包括创建一个表单 html 页面.添加 JQuery 代码.jquery ajax 表单提交.jquery ajax 表单验证.反馈信息给用户.php ajax 表单验证,php ajax 提交表单,php ajax form 验证,php ajax 提交 form .   本实例用到 JQuery 类库本身的函数和功能,所有表单信息利用 PHPMailer 类库邮件的形式发送.   1.创建一个表单 html 页面   表单部分

使用jQuery.Validate进行客户端验证(初级篇) 不使用微软验证控件的理由_jquery

主要理由有以下几点: 1.拖控件太麻烦,这个是微软控件的常用方式,你要使用一个控件你得从工具栏中拖到页面里(当然你也可以不拖手写). 2.必须指定验证对象,验证控件与其他textbox,dropdownlist控件不同的是它是验证其他控件的输入是否有效的,所以必须指定所验证的对象. 3.影响整个页面美观,像一些管理系统总是需要进行大量的用户输入验证,所以就可能导致一个页面上有几十个验证控件严重影响了原来页面里的东西,看起来十分不舒服. 4.ajax验证不方便,现在的系统越来越注重客户的用户体验,