js判断文件类型大小并给出提示的实现方法


Posted in Javascript onJanuary 03, 2018

上传文件是工作中常用的功能,不同的场景对不同的文件类型和文件大小都有不同的要求:

<form id="uploadForm" method="post" class="layui-form">
  <div class="layui-form-item">
  <label class="layui-form-label">名称</label>
  <div class="layui-input-block">
   <input type="text" name="name" required lay-verify="required"
   placeholder="请输入文件名" autocomplete="off" class="layui-input">
  </div>
  </div>
  <div class="layui-form-item">
  <label class="layui-form-label">资料类型:</label>
  <div class="layui-input-block">
   <select name="datatypeid" id="datatypeid"></select>
  </div>
  <input type="hidden" id="yincang">
  </div>
  <div class="layui-form-item">
  <label class="layui-form-label">上传文件</label>
  <div class="layui-input-block">
   <input class="layui-input" type="file" name="file" onchange="fileChange(this);"/>
  </div>
  </div>
  <div class="layui-form-item">
  <div class="layui-input-block">
   <input type="button" class="layui-btn" value="上传"
   onclick="upload()" />
  </div>
  </div>
 </form>

js方法:

<script type="text/javascript">
 var isIE = /msie/i.test(navigator.userAgent) && !window.opera;
 function fileChange(target, id) {
  var fileSize = 0;
  var filetypes = [ ".doc", ".docx" ];//这里设置接受的文件类型
  var filepath = target.value;
  var filemaxsize = 1024 * 10;//接受的文件最大10M 
  if (filepath) {
  var isnext = false;
  var fileend = filepath.substring(filepath.indexOf("."));
  if (filetypes && filetypes.length > 0) {
   for (var i = 0; i < filetypes.length; i++) {
   if (filetypes[i] == fileend) {
    isnext = true;
    break;
   }
   }
  }
  if (!isnext) {
   alert("不接受此文件类型!");
   target.value = "";
   return false;
  }
  } else {
  return false;
  }
  if (isIE && !target.files) {
  var filePath = target.value;
  var fileSystem = new ActiveXObject("Scripting.FileSystemObject");
  if (!fileSystem.FileExists(filePath)) {
   alert("附件不存在,请重新输入!");
   return false;
  }
  var file = fileSystem.GetFile(filePath);
  fileSize = file.Size;
  } else {
  fileSize = target.files[0].size;
  }
  var size = fileSize / 1024;
  if (size > filemaxsize) {
  alert("附件大小不能大于" + filemaxsize / 1024 + "M!");
  target.value = "";
  return false;
  }
  if (size <= 0) {
  alert("附件大小不能为0M!");
  target.value = "";
  return false;
  }
 }
 </script>

以上这篇js判断文件类型大小并给出提示的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery 学习笔记 选择器之三
Jul 23 Javascript
jQuery 事件的命名空间简单了解
Nov 22 Javascript
jquery专业的导航菜单特效代码分享
Aug 29 Javascript
常用javascript表单验证汇总
Jul 20 Javascript
关于RequireJS的简单介绍即使用方法
Oct 20 Javascript
js for循环倒序输出数组元素的实例
Mar 01 Javascript
vue数据控制视图源码解析
Mar 28 Javascript
JS实现前端页面的搜索功能
Jun 12 Javascript
详解小程序退出页面时清除定时器
Apr 28 Javascript
在Layui 的表格模板中,实现layer父页面和子页面传值交互的方法
Sep 10 Javascript
webpack常用配置总览(小结)
Nov 18 Javascript
微信小程序纯文本实现@功能
Apr 08 Javascript
js登录滑动验证的实现(不滑动无法登陆)
Jan 03 #Javascript
Angular实现下拉框模糊查询功能示例
Jan 03 #Javascript
Node使用Sequlize连接Mysql报错:Access denied for user ‘xxx’@‘localhost’
Jan 03 #Javascript
angularjs实现分页和搜索功能
Jan 03 #Javascript
vue引入ueditor及node后台配置详解
Jan 03 #Javascript
Node.js搭建小程序后台服务
Jan 03 #Javascript
基于js文件加载优化(详解)
Jan 03 #Javascript
You might like
php中AES加密解密的例子小结
2014/02/18 PHP
摘自织梦CMS中的图片处理类
2015/08/08 PHP
Smarty模板引擎缓存机制详解
2016/05/23 PHP
php获取一定范围内取N个不重复的随机数
2016/05/28 PHP
PHP文件系统管理(实例讲解)
2017/09/19 PHP
给js文件传参数(详解)
2014/07/13 Javascript
JavaScript fontsize方法入门实例(按照指定的尺寸来显示字符串)
2014/10/17 Javascript
node.js中的console.trace方法使用说明
2014/12/09 Javascript
JavaScript中的对象序列化介绍
2014/12/30 Javascript
javascript中sort()的用法实例分析
2015/01/30 Javascript
js实现数字每三位加逗号的方法
2015/02/05 Javascript
Js实现简单的小球运动特效
2016/02/18 Javascript
JS作用域深度解析
2016/12/29 Javascript
基于Vue 2.0 监听文本框内容变化及ref的使用说明介绍
2018/08/24 Javascript
微信小程序入门之指南针
2020/10/22 Javascript
[01:39](回顾)各路豪强针锋相对,几经鏖战四强产生
2014/07/01 DOTA
使用PDB模式调试Python程序介绍
2015/04/05 Python
python实现简易云音乐播放器
2018/01/04 Python
python抽取指定url页面的title方法
2018/05/11 Python
Python实现图片批量加入水印代码实例
2019/11/30 Python
Python如何使用正则表达式爬取京东商品信息
2020/06/01 Python
Python3爬虫关于识别点触点选验证码的实例讲解
2020/07/30 Python
Python字典取键、值对的方法步骤
2020/09/30 Python
使用HTML5的链接预取功能(link prefetching)给网站提速
2012/12/13 HTML / CSS
canvas实现滑动验证的实现示例
2020/08/11 HTML / CSS
英国女性时尚品牌:Apricot
2018/12/04 全球购物
建筑学推荐信
2013/11/03 职场文书
个人合作协议书范本
2014/04/18 职场文书
扬尘污染防治方案
2014/06/15 职场文书
纪念九一八事变演讲稿:忘记意味着背叛
2014/09/14 职场文书
乡镇党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
童年读书笔记
2015/06/26 职场文书
员工规章制度范本
2015/08/07 职场文书
幼儿园教师暑期培训心得体会
2016/01/09 职场文书
技术转让协议书
2016/03/19 职场文书
为什么MySQL8新特性会修改自增主键属性
2022/04/18 MySQL