zoukankan      html  css  js  c++  java
  • 判断Input上传文件类型,文件大小

    判断input上传文件类型,文件大小。input获取的size为字节,判断大小的时候需要把限制大小转换为字节

    //input标签添加Onchange事件
    <input type="file" id="kjzylj" name="kjzylj" class="file"  onchange="getFile(this)">
     
    //JS部分
     
     
    function getFile(val) {
     
    	var file = val.files[0];//获取文件对象
    	var type = file.name.split('.')[1];//获取文件类型
    	type=type.toLowerCase();//转换为小写
    	if (getTypeCode(type)==0){
    		toastr.warning("文件类型不符合规定!");
    		return;
    	}
    	if (!checkFileSize(getTypeCode(type),file.size)){
    		toastr.warning("文件过大!");
    		return;
    	}
    ]
     
    //获取文件类型
    function getTypeCode(type) {
    	switch (type) {
    		case 'doc':
    			return 1;
    			break;
    		case 'docx':
    			return 2;
    			break;
    		case 'xls':
    			return 3;
    			break;
    		case 'xlsx':
    			return 4;
    			break;
    		case 'ppt':
    			return 5;
    			break;
    		case 'pptx':
    			return 6;
    			break;
    		case 'txt':
    			return 7;
    			break;
    		case 'pdf':
    			return 8;
    			break;
    		case 'mp4':
    			return 9;
    			break;
    		case 'mp3':
    			return 10;
    			break;
    		default :
    			return 0;
     
    	}
     
    }
     
     
     
    //获取文件大小
    /*
    * type=文件类型
    * size=文件大小
    * */
    function checkFileSize(type,size) {
    	//检查上传文件的大小
     
    	if (type<9){
    		if (size>52428800){
    			//文档类文件大于50M
    			return 0;
    		}
    	}else if (type==9){
    		if (size>1073741824){
    			//视频文件大于1G
    			return 0;
    		}
    	}else{
    		if (size>209715200){
    			//音频文件大于200M
    			return 0;
    		}
    	}
    	return 1;
     
    }
    

      

  • 相关阅读:
    上传文件
    Python中@staticmethod和@classmethod的作用和区别
    面向对象 类
    成员修饰符
    class 类 笔记
    模块&包
    java 文件上传下载
    redis 基本操作命令
    redis 和 mysql 的主从复制
    mysql的日志文件及其作用
  • 原文地址:https://www.cnblogs.com/xwills/p/12730396.html
Copyright © 2011-2022 走看看