JS自定义函数对web前端上传的文件进行类型大小判断


Posted in Javascript onOctober 19, 2016

废话不多说了直接给大家贴js代码了。具体代码如下所示:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>web前端对上传的文件进行类型大小判断的js自定义函数</title>
</head>
<body>
<form>
<input type="file" id="fileId"> 
<input type="button" value = "提交" onclick="checkFileSizeAndType(10*1024*1024,['gif','jpg','png'],'fileId');">
</form>
<script>
//参数说明
//maxSize 代表允许最大上传的文件大小,单位是字节
//allowType 代表允许上传的文件类型(后缀) 
//fileId 代表input type=file 框 的id
function checkFileSizeAndType(maxSize,allowType,fileId) {
//默认大小
if(!maxSize){
maxSize=10*1024*1024;
}
//默认类型
if(!allowType){
allowType=new Array('jpg','png'); 
}
//js通过id获取上传的文件对象
var file = document.getElementById(fileId); 
var types =allowType;
var fileInfo = file.files[0];
if(!fileInfo){
alert("请选择文件!");
return false;
}
var fileName = fileInfo.name;
//获取文件后缀名
var file_typename = fileName.substring(
fileName.lastIndexOf('.') + 1, fileName.length);
//定义标志是否可以提交上传
var isUpload = true;
//定义一个错误参数:1代表大小超出 2代表类型不支持
var errNum =0;
if (fileInfo) {
if (fileInfo.size > maxSize) {
isUpload = false;
errNum=1;
} else {
for ( var i in types) {
if (types[i] == file_typename) {
isUpload = true;
return isUpload;
} else {
isUpload = false;
errNum=2;
}
}
}
}
//对错误的类型进行对应的提示
if (!isUpload) {
if(errNum==1){
var size = maxSize/1024/1024;
alert("上传的文件必须为小于"+size+"M的图片!");
}else if(errNum==2){
alert("上传的"+file_typename+"文件类型不支持!只支持"+types.toString()+"格式");
}else{
alert("没有选择文件");
}
file.value="";
return isUpload;
}
}
</script>
</body>
</html>

以上所述是小编给大家介绍的JS自定义函数对web前端上传的文件进行类型大小判断,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript 编程引入命名空间的方法与代码
Aug 13 Javascript
JavaScript 实现打印,打印预览,打印设置
Dec 30 Javascript
jquery popupDialog 使用 加载jsp页面的方法
Oct 25 Javascript
微信小程序 textarea 组件详解及简单实例
Jan 10 Javascript
纯jQuery实现前端分页功能
Mar 23 jQuery
jQuery实现分页功能(含ajax请求、后台数据、附完整demo)
Apr 03 jQuery
Vue.js中extend选项和delimiters选项的比较
Jul 17 Javascript
vue+mockjs模拟数据实现前后端分离开发的实例代码
Aug 08 Javascript
jquery 键盘事件的使用方法详解
Sep 13 jQuery
node.js的exports、module.exports与ES6的export、export default深入详解
Oct 26 Javascript
javascript性能优化之分时函数的介绍
Mar 28 Javascript
在pycharm中开发vue的方法步骤
Mar 04 Javascript
jQuery  ready方法实现原理详解
Oct 19 #Javascript
Javascript实现汉字和拼音互转的终极方案
Oct 19 #Javascript
Javascript typeof与instanceof的区别
Oct 18 #Javascript
javascript self对象使用详解
Oct 18 #Javascript
jQuery动态添加与删除tr行实例代码
Oct 18 #Javascript
Jquery表单验证失败后不提交的解决方法
Oct 18 #Javascript
vue.js 表格分页ajax 异步加载数据
Oct 18 #Javascript
You might like
乱谈我对耳机、音箱的感受
2021/03/02 无线电
smarty 缓存控制前的页面静态化原理
2013/03/15 PHP
destoon二次开发模板及调用语法汇总
2014/06/21 PHP
PHP输出Excel PHPExcel的方法
2018/07/26 PHP
PHP程序员必须知道的两种日志实例分析
2020/05/14 PHP
JavaScript修改css样式style
2008/04/15 Javascript
IE FF OPERA都可用的弹出层实现代码
2009/09/29 Javascript
javascript loadScript异步加载脚本示例讲解
2013/11/14 Javascript
JQuery中使用ajax传输超大数据的解决方法
2014/07/14 Javascript
JavaScript控制按钮可用或不可用的方法
2015/04/03 Javascript
ECMAScript6新增值比较函数Object.is
2015/06/12 Javascript
BOM系列第二篇之定时器requestAnimationFrame
2016/08/17 Javascript
JS弹出窗口的运用与技巧大全
2016/11/01 Javascript
原生js实现水平方向无缝滚动
2017/01/10 Javascript
Angular2中如何使用ngx-translate进行国际化
2017/05/21 Javascript
jQuery remove()过滤被删除的元素(推荐)
2017/07/18 jQuery
使用store来优化React组件的方法
2017/10/23 Javascript
使用JQuery实现图片轮播效果的实例(推荐)
2017/10/24 jQuery
微信小程序生成海报分享朋友圈的实现方法
2019/05/06 Javascript
Node配合WebSocket做多文件下载以及进度回传
2019/11/07 Javascript
vue 使用rules对表单字段进行校验的步骤
2020/12/25 Vue.js
Vue+Bootstrap实现简易学生管理系统
2021/02/09 Vue.js
[02:23]2018DOTA2亚洲邀请赛趣味视频——反应测试
2018/04/04 DOTA
Python的消息队列包SnakeMQ使用初探
2016/06/29 Python
pandas 数据实现行间计算的方法
2018/06/08 Python
Python3.5 Json与pickle实现数据序列化与反序列化操作示例
2019/04/29 Python
关于PyTorch源码解读之torchvision.models
2019/08/17 Python
python和php学习哪个更有发展
2020/06/17 Python
html5 canvas里绘制椭圆并保持线条粗细均匀的技巧
2013/03/25 HTML / CSS
Canvas 文本填充线性渐变的使用详解
2020/06/22 HTML / CSS
Groupon西班牙官方网站:在线优惠券和交易,节省高达70%
2021/03/13 全球购物
六年级学生评语
2014/04/22 职场文书
小学生教师节演讲稿
2014/09/03 职场文书
大学生学习计划书
2014/09/15 职场文书
婚礼答谢词范文
2015/09/29 职场文书
Android开发EditText禁止输入监听及InputFilter字符过滤
2022/06/10 Java/Android