多个上传文件用js验证文件的格式和大小的方法(推荐)


Posted in Javascript onMarch 09, 2017

html部分:

<dsp:form action="${originatingRequest.requestURI}" method="post" enctype="multipart/form-data">
  <dsp:input type="file" bean="ReturngoodsFormHandler.uploadedFile1" id="uploadedFile1" value="" onchange="checkfile('uploadedFile1');"/>
  <dsp:input type="file" bean="ReturngoodsFormHandler.uploadedFile2" id="uploadedFile2" value="" onchange="checkfile('uploadedFile2');"/>
  <a class="btn_sprite btn_font14_red" href="javascript:;" rel="external nofollow" ><span>提交申请</span></a>

   <dsp:input type="submit" style="display:none;" bean="ReturngoodsFormHandler.submitReturngoods" id="submitReturngoods" value="Add"/>

   </dsp:form>

需要注意:上传文件要有一个id,然后onchage事件里加一个id的名称;

js部分:

//将验证的设置和错误信息抽离出来,有利于最后submit时候做判断

var flag=true;
 var errorinfo="";

//验证文件的格式
 function checkfile(filenames){
  filename=document.getElementByIdx_x_x(filenames).value;

  var re=/(.[.]bmp)$|(.[.]gif)$|(.[.]jpg)$|(.[.]png)$|(.[.]jpeg)$/i;
  if (!re.test(filename)) {
  errorinfo = "只支持bmp,gif,jpg,png,jpeg格式文件,请重新上传";
  alert(errorinfo);
  flag = false;
  return false;
   }

//验证文件的大小
   if(document.getElementByIdx_x_x(filenames).size>8000){
   errorinfo = "文件必须小于800KB,图片太大 size:"+document.getElementByIdx_x_x_x_x_x(filenames).size;
   alert(errorinfo);
   return false;
   }
 }

 jQuery('.btn_font14_red').click(function(){
 if(flag==true){
  $("#submitReturngoods").click();
 }else{
  alert(errorinfo);
  return false;
 } 

 });

注意:这么做的好处是:第一:上传文件的时候,如果有错误,第一时间通知用户,用户去修改;

第二:如果用户最后填完了,虽然之前有提示语句,但是用户忘了是什么,点击提交的时候,仍然可以提示用户问题的原因。同时将错误信息和设置值放在最外面,而不用再次验证,可以节省页面效率。

(document.getElementByIdx_x_x(filenames) 不知道为啥发表的时候,总是多个_x,去又去不掉,大家在copy的时候记得去掉哈)

以上这篇多个上传文件用js验证文件的格式和大小的方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
获取HTML DOM节点元素的方法的总结
Aug 21 Javascript
juqery 学习之四 筛选过滤
Nov 30 Javascript
jQuery学习笔记(2)--用jquery实现各种模态提示框代码及项目构架
Apr 08 Javascript
将list转换为json失败的原因
Dec 17 Javascript
Javascript 赋值机制详解
Nov 23 Javascript
检测一个函数是否是JavaScript原生函数的小技巧
Mar 13 Javascript
两款JS脚本判断手机浏览器类型跳转WAP手机网站
Oct 16 Javascript
Wireshark基本介绍和学习TCP三次握手
Aug 15 Javascript
Vue input控件通过value绑定动态属性及修饰符的方法
May 03 Javascript
在vue项目中使用Jquery-contextmenu插件的步骤讲解
Jan 27 jQuery
原生js实现碰撞检测
Mar 12 Javascript
原生JavaScript实现简单五子棋游戏
Jun 28 Javascript
jQuery实现字符串全部替换的方法【推荐】
Mar 09 #Javascript
js获取json中key所对应的value值的简单方法
Jun 17 #Javascript
ng2学习笔记之bootstrap中的component使用教程
Mar 09 #Javascript
Angular.js中处理页面闪烁的方法详解
Mar 09 #Javascript
jQuery插件HighCharts实现的2D对数饼图效果示例【附demo源码下载】
Mar 09 #Javascript
JS实现课堂随机点名和顺序点名
Mar 09 #Javascript
JavaScript实现两个select下拉框选项左移右移
Mar 09 #Javascript
You might like
解析dedeCMS验证码的实现代码
2013/06/07 PHP
thinkPHP5.0框架简单配置作用域的方法
2017/03/17 PHP
PHP中define() 与 const定义常量的区别详解
2019/06/25 PHP
Ajax 数据请求的简单分析
2011/04/05 Javascript
JS将制定内容复制到剪切板示例代码
2014/02/11 Javascript
JS实现判断碰撞的方法
2015/02/11 Javascript
JQuery中Text方法用法实例分析
2015/05/18 Javascript
jquery.fastLiveFilter.js实现输入自动过滤的方法
2015/08/11 Javascript
js判断鼠标位置是否在某个div中的方法
2016/02/26 Javascript
纯js代码生成可搜索选择下拉列表的实例
2018/01/11 Javascript
jquery实现搜索框功能实例详解
2018/07/23 jQuery
JavaScript树的深度优先遍历和广度优先遍历算法示例
2018/07/30 Javascript
React SSR样式及SEO的实践
2018/10/22 Javascript
Vue项目中如何使用Axios封装http请求详解
2019/10/23 Javascript
Javascript实现鼠标点击冒泡特效
2019/12/24 Javascript
使用Typescript和ES模块发布Node模块的方法
2020/05/25 Javascript
Python使用scrapy抓取网站sitemap信息的方法
2015/04/08 Python
python类继承用法实例分析
2015/05/27 Python
python查看FTP是否能连接成功的方法
2015/07/30 Python
python+django加载静态网页模板解析
2017/12/12 Python
使用python中的in ,not in来检查元素是不是在列表中的方法
2018/07/06 Python
解决pyinstaller打包发布后的exe文件打开控制台闪退的问题
2019/06/21 Python
Python  Django 母版和继承解析
2019/08/09 Python
Python如何转换字符串大小写
2020/06/04 Python
windows支持哪个版本的python
2020/07/03 Python
python 爬虫基本使用——统计杭电oj题目正确率并排序
2020/10/26 Python
澳大利亚连衣裙和女装在线:Esther
2017/11/11 全球购物
英国领先的维生素和补充剂品牌:Higher Nature
2019/08/26 全球购物
Urban Decay官方网站:美国化妆品品牌
2020/06/04 全球购物
销售辞职报告范文
2014/01/12 职场文书
认识深刻的检讨书
2014/02/16 职场文书
大学生思想道德自我评价
2015/03/09 职场文书
小学信息技术教学反思
2016/02/16 职场文书
导游词之山东八大关
2019/12/18 职场文书
Nginx服务器如何设置url链接
2021/03/31 Servers
Elasticsearch 索引操作和增删改查
2022/04/19 Python