zoukankan      html  css  js  c++  java
  • 判断pdf、word文档、图片等文件类型(格式)、大小的简便方法

        判断pdf、word文档、图片等文件类型(格式)、大小的简便方法

        很久没发文了,今天有时间就写一下吧。

        关于上传文件,通常我们都需要对其进行判断,限制上传的类型,如果是上传图片,我们甚至会把图片转化成base64数据后,再进行上传。普遍的方法是直接写在上传按钮的触发方法里面,但是对于大型的项目而言,这必然是会重复着同一段代码,使得代码臃肿繁重,这样也不利于平台的优化以及后续的维护,于是,我便封装了一个小小的判断上传文件的类型,图片类型的简便方法,这样不紧节省了重复的劳动力,而且还可以更好的优化项目,提高性能,代码如下:

    复制代码
    /*
    Type:   该值为类型数组,例如:["gif","jpeg","jpg","png"]
    Size:   该值为数值,限制大小(单位M)
    fileID: 需要验证的文件ID
    clackFn:回调函数
    
    使用:TypeSize(["gif","jpeg","jpg","png"],20,"id",function(){
                 //回调函数内容
            });
      */
    function TypeSize(Type,Size,fileID,clackFn){     
        var file = document.getElementById(fileID);
        var size = 1024*1024*Size;
        var arr = Type;
        var fileContentType = file.value.match(/^(.*)(.)(.{1,8})$/)[3]; //文件类型
        if (file.files && file.files[0]){
            var f_size = file.files[0].size;   //文件大小
            if(arr.join(',').toLowerCase().indexOf(fileContentType.toLowerCase()) != -1){  //检索上传的文件类型是不是在允许的arr数组之内
                if(f_size > size){
                    GlobalTip.WarningTipBox("文件太大,请重新上传",'确定');
                    file.value="";
                    return false;
                }else {
                    clackFn();
                }
    
            } else {
                GlobalTip.WarningTipBox("文件格式不匹配,请重新上传",'确定');
            }
        } else {   //兼容IE
            GlobalTip.WarningTipBox('请切到高级浏览器,再进行图片上传','确定');
        }
    
    }
    复制代码

    谢谢阅读,如果能帮到您,请帮忙顶一个,当然喜欢的可以收藏一下,谢谢!~( ̄▽ ̄~)(~ ̄▽ ̄)~

    注:转发其他人的

  • 相关阅读:
    简谈单线程多线程的理解
    简谈vuex的理解
    简谈自己对redux的理解
    react-native-1
    react中信息传递的几种方式
    简谈对虚拟Dom的理解
    React-小总结
    移动端解决边框1像素问题
    JavaScript标记上的defer与async的作用与区别
    jQuery.smoove — jQuery和CSS3炫酷滚动页面内容元素动画特效插件
  • 原文地址:https://www.cnblogs.com/shejuan/p/7878744.html
Copyright © 2011-2022 走看看