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 31 Javascript
jQuery中ajax的使用与缓存问题的解决方法
Dec 19 Javascript
JavaScript开发Chrome浏览器扩展程序UI的教程
May 16 Javascript
JS判断是否手机或pad访问实现方法
Dec 09 Javascript
JS去掉字符串末尾的标点符号及删除最后一个字符的方法
Oct 24 Javascript
使用Angular CLI进行Build(构建)和Serve详解
Mar 24 Javascript
使用iView Upload 组件实现手动上传图片的示例代码
Oct 01 Javascript
js array数组对象操作方法汇总
Mar 18 Javascript
HTML+JavaScript实现扫雷小游戏
Sep 30 Javascript
解决vue 表格table列求和的问题
Nov 06 Javascript
Vue性能优化的方法
Jul 30 Javascript
详解Vue slot插槽
Nov 20 Vue.js
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
mysql中存储过程、函数的一些问题
2007/02/14 PHP
php微信公众平台交互与接口详解
2016/11/28 PHP
php实现的统计字数函数定义与使用示例
2017/07/26 PHP
PHP常见的序列化与反序列化操作实例分析
2019/10/28 PHP
php使用自带dom扩展进行元素匹配的原理解析
2020/05/29 PHP
Raphael带文本标签可拖动的图形实现代码
2013/02/20 Javascript
jQuery:delegate中select()不起作用的解决方法(实例讲解)
2014/01/26 Javascript
详解JavaScript语法对{}处理的坑爹之处
2014/06/05 Javascript
node.js中的buffer.toString方法使用说明
2014/12/14 Javascript
简单实现异步编程promise模式
2015/07/31 Javascript
浅谈jQuery animate easing的具体使用方法(推荐)
2016/06/17 Javascript
在Docker快速部署Node.js应用的详细步骤
2016/09/02 Javascript
关于Vue.js 2.0的Vuex 2.0 你需要更新的知识库
2016/11/30 Javascript
ajax请求data遇到的问题分析
2018/01/18 Javascript
Angular 向组件传递模板的两种方法
2018/02/23 Javascript
关于Vue组件库开发详析
2018/07/01 Javascript
详解如何在vscode里面调试js和node.js的方法步骤
2018/12/24 Javascript
Nodejs处理异常操作示例
2018/12/25 NodeJs
js计时事件实现圆形时钟
2020/03/25 Javascript
微信小程序全选多选效果实现代码解析
2020/01/21 Javascript
JavaScript组合设计模式--改进引入案例分析
2020/05/23 Javascript
JavaScript的垃圾回收机制与内存管理
2020/08/06 Javascript
JavaScript事件委托实现原理及优点进行
2020/08/29 Javascript
在nuxt中使用路由重定向的实例
2020/11/06 Javascript
Python3实现的腾讯微博自动发帖小工具
2013/11/11 Python
python使用cookie库操保存cookie详解
2014/03/03 Python
python利用sklearn包编写决策树源代码
2017/12/21 Python
springboot配置文件抽离 git管理统 配置中心详解
2019/09/02 Python
python ftplib模块使用代码实例
2019/12/31 Python
ECOSUSI官网:女式皮革背包
2019/09/27 全球购物
Stührling手表官方网站:男女高品质时尚手表的领先零售商
2021/01/07 全球购物
通信生自我鉴定
2014/01/18 职场文书
教书育人演讲稿
2014/09/11 职场文书
公司领导班子对照检查存在问题整改措施
2014/10/02 职场文书
Golang 使用Map实现去重与set的功能操作
2021/04/29 Golang
Python Parser的用法
2021/05/12 Python