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 相关文章推荐
教您去掉ie网页加载进度条的方法
Dec 09 Javascript
自己写了一个展开和收起的多更能型的js效果
Mar 05 Javascript
jquery验证表单中的单选与多选实例
Aug 18 Javascript
用box固定长宽实现图片自动轮播js代码
Jun 09 Javascript
node.js中的path.basename方法使用说明
Dec 09 Javascript
JavaScript中的some()方法使用详解
Jun 09 Javascript
AngularJS中监视Scope变量以及外部调用Scope方法
Jan 23 Javascript
Bootstrap打造一个左侧折叠菜单的系统模板(二)
May 17 Javascript
基于d3.js实现实时刷新的折线图
Aug 03 Javascript
微信小程序 地图(map)实例详解
Nov 16 Javascript
基于JavaScript实现百度搜索框效果
Jun 28 Javascript
layui实现文件或图片上传记录
Aug 28 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连mysql和oracle数据库性能比较
2006/10/09 PHP
解决控件遮挡问题:关于有窗口元素和无窗口元素
2007/01/28 PHP
攻克CakePHP系列二 表单数据显示
2008/10/22 PHP
PHP简洁函数小结
2011/08/12 PHP
用php实现百度网盘图片直链的代码分享
2012/11/01 PHP
探讨php中header的用法详解
2013/06/07 PHP
支持生僻字且自动识别utf-8编码的php汉字转拼音类
2014/06/27 PHP
PHP Cookie学习笔记
2016/08/23 PHP
Yii2语言国际化的配置教程
2018/08/19 PHP
document.documentElement &amp;&amp; document.documentElement.scrollTop
2007/12/01 Javascript
js 禁用只读文本框获得焦点时的退格键
2010/04/25 Javascript
jQuery中DOM树操作之使用反向插入方法实例分析
2015/01/23 Javascript
nodejs实现获取某宝商品分类
2015/05/28 NodeJs
javascript生成不重复的随机数
2015/07/17 Javascript
JS实现漂亮的淡蓝色滑动门效果代码
2015/09/23 Javascript
Bootstrap每天必学之基础排版
2015/11/20 Javascript
JavaScript性能优化总结之加载与执行
2016/08/11 Javascript
Vue弹出菜单功能的实现代码
2018/09/12 Javascript
JavaScript基于用户照片姓名生成海报
2020/05/29 Javascript
浅谈vue 多个变量同时赋相同值互相影响
2020/08/05 Javascript
python和shell变量互相传递的几种方法
2013/11/20 Python
用PyQt进行Python图形界面的程序的开发的入门指引
2015/04/14 Python
python搭建虚拟环境的步骤详解
2016/09/27 Python
实例讲解Python3中abs()函数
2019/02/19 Python
python打开windows应用程序的实例
2019/06/28 Python
Python调用Windows命令打印文件
2020/02/07 Python
解决Keras的自定义lambda层去reshape张量时model保存出错问题
2020/07/01 Python
css3 column实现卡片瀑布流布局的示例代码
2018/06/22 HTML / CSS
详解使用postMessage解决iframe跨域通信问题
2019/11/01 HTML / CSS
梵蒂冈和罗马卡:Omnia Card Pass
2018/02/10 全球购物
英语分层教学实施方案
2014/06/15 职场文书
劳动竞赛口号
2014/06/16 职场文书
学习雷锋月活动总结
2014/07/03 职场文书
公司股份转让协议书范本
2015/01/28 职场文书
2015夏季作息时间调整通知
2015/04/24 职场文书
实习证明模板
2015/06/16 职场文书