1、找到上传文件的前端代码,下断点,进行调试,使用jquery获得上传文件对象

2、鼠标放到文件对象fielEl上,弹出文件对象具体内容,可以看大文件对象的:上次修改时间、名字、大小、类型等信息  

3、根据这些信息就可以进行文件大小、类型、修改日期、是否为空文件的判断,比如上图中空文件的判断方法:

if (typeof(fileEl[0].files[0])=='undefined'

一步一步调试,查看文件为空时的字段特征,发现当文件为空时,自动typeof(fileEl[0].files[0]的值为undefined

4、一旦验证不通过,可以通过下面的方法,阻止提交

 $('#submit_batch_upload').on('click',function(ev){
// ev.halt();
// ev.preventDefault();
var fileEl = $('#File1');
if (typeof(fileEl[0].files[0])=='undefined'){
fileEl[0].focus();
html = '<h4 style="color: red">请选择一个文件' + '</h4>';
$('#null_error_tip').html(html);
ev.preventDefault();
// $('#submit_batch_upload').attr('disabled',true);
return;
}
else {
html = '';
$('#null_error_tip').html(html);
}
// console.log(fileEl.files); if (!testMaxSize(fileEl[0])){
ev.preventDefault();
return;
}
if(!testFileType(fileEl[0])){
ev.preventDefault();
return;
}
});

5、$(“#submit_batch_upload”).attr(“disabled”, true);可以使按钮不可用,置灰,但是当文件更换后,仍然置灰,没有办法再次提交校验

js判断上传文件的大小、类型、修改日期等信息的更多相关文章

  1. js判断上传文件的类型和大小

    //检测文件大小和类型 function fileChange(target){ //检测上传文件的类型 if(!(/(?:jpg|gif|png|jpeg)$/i.test(target.value ...

  2. JS判断上传文件类型

    /*   * 判断图片类型   */    function checkImgType(ths){        if (ths.value == "") {            ...

  3. JS 判断上传 文件 大小

    随着HTML5 的发展,我们可以用file控件的size属性来获取客户端 上传文件的大小,但是 我今天测试 发现IE10支持,IE11的某个版本不支持, 于是就借用img控件来加载一此, 以此来获取文 ...

  4. 扩展 ajaxupload.js ,支持客户端判断上传文件的大小

    onSubmit: function(file, extension){}, 修改为 onSubmit: function(file, extension, size){}, if (! (setti ...

  5. input file 文件上传,js控制上传文件的大小和格式

    文件上传一般是用jquery的uploadify,比较好用.后面会出文章介绍uploadify这个插件. 但是,有时候为了偷懒,直接就用input 的file进行文件和图片等的上传,input fil ...

  6. JS 判断上传文件类型

    var video_src_file = $("#video_src_file").val(); var fileTypes = new Array("flv" ...

  7. 兼容各浏览器的js判断上传文件大小

    由于项目需要,在网上找了一个JS判断上传文件大小的程序,经测试兼容IE6-,Firefox10,Opera11.,safari5.,chrome17 <!DOCTYPE html> < ...

  8. js限制上传文件类型和大小

    <html> <head> <script type="text/javascript"> function fileChange(target ...

  9. js限制上传文件的类型和大小

    var maxsize = 6*1024*1024;//6M var errMsg = "上传的附件文件不能超过6M!!!"; var tipMsg = "您的浏览器暂不 ...

随机推荐

  1. NYOJ 973 天下第一 (最短路)

    题目链接 描述 AC_Grazy一直对江湖羡慕不已,向往着大碗吃肉大碗喝酒的豪情,但是"人在江湖漂,怎能 不挨刀","人在江湖身不由己",如果自己的武功太差,在 ...

  2. linux系统备份脚本

    前言 之前写过<<linux系统简单备份的脚本>>, 最开始一直用着,后来觉得有必要改进下它,不管是从操作方式上还是脚本的工作方式上.之所以这么看重备份,是因为我经历过磁盘损坏 ...

  3. platform_driver_register,什么时候调用PROBE函数 注册后如何找到驱动匹配的设备【转】

    转自:http://blog.chinaunix.net/uid-25508271-id-2979412.html kernel_init中do_basic_setup()->driver_in ...

  4. tcpdump学习(2):基本使用

    安装好tcpdump之后,运行tcpdump: 1. tcpdump -D 获取网络适配器列表,以下是在Ubuntu上获取到的结果: root@holmesian-laptop:~# tcpdump ...

  5. jquery事件之select选中事件

    根据select下拉列表选中的不同选项执行不同的方法,工作中经常会用到,这里就要用到Jquery的select选中事件 这里给select加一个叫label_id的id,然后通过id选择器找到这个节点 ...

  6. 如何php防止XSS攻击

    什么是XSS:这里通俗的讲,就像是SQL注入一样,XSS攻击也可以算是对HTML和JS的一种注入.你本来希望得到是从用户那得到一段有用的文本文字,但用户提交给你的却是别有用心的可执行javascrip ...

  7. 在web项目下注册MySQL数据库驱动失败

    java.lang.ClassNotFoundException: com.mysql.jdbc.Driver at org.apache.catalina.loader.WebappClassLoa ...

  8. VisualStudio 2013开发Office插件

    在VS中选择创建新项目,选择App for Office 选择mail出现的位置 Task pane The app appears in the task pane of a Microsift O ...

  9. uiautomator2 +Python进行Android原生应用UI测试

    uiautomator2封装了google的uiautomator(只能用java),uiautomator2可以使用脚本语言python进行编写,更简单直观地修改.运行自动化测试代码: 不足为:仅支 ...

  10. 设置每个datanode里面的map数目,提高运行效率

    首先可以通过hdfs.site.xml下面的dfs.block.size来设置数据的块大小,这个参数会决定map的总数目(4194304=4m) 然后通过mapred.site.xml下面的mapre ...