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