js判断上传文件的大小、类型、修改日期等信息
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判断上传文件的大小、类型、修改日期等信息的更多相关文章
- js判断上传文件的类型和大小
//检测文件大小和类型 function fileChange(target){ //检测上传文件的类型 if(!(/(?:jpg|gif|png|jpeg)$/i.test(target.value ...
- JS判断上传文件类型
/* * 判断图片类型 */ function checkImgType(ths){ if (ths.value == "") { ...
- JS 判断上传 文件 大小
随着HTML5 的发展,我们可以用file控件的size属性来获取客户端 上传文件的大小,但是 我今天测试 发现IE10支持,IE11的某个版本不支持, 于是就借用img控件来加载一此, 以此来获取文 ...
- 扩展 ajaxupload.js ,支持客户端判断上传文件的大小
onSubmit: function(file, extension){}, 修改为 onSubmit: function(file, extension, size){}, if (! (setti ...
- input file 文件上传,js控制上传文件的大小和格式
文件上传一般是用jquery的uploadify,比较好用.后面会出文章介绍uploadify这个插件. 但是,有时候为了偷懒,直接就用input 的file进行文件和图片等的上传,input fil ...
- JS 判断上传文件类型
var video_src_file = $("#video_src_file").val(); var fileTypes = new Array("flv" ...
- 兼容各浏览器的js判断上传文件大小
由于项目需要,在网上找了一个JS判断上传文件大小的程序,经测试兼容IE6-,Firefox10,Opera11.,safari5.,chrome17 <!DOCTYPE html> < ...
- js限制上传文件类型和大小
<html> <head> <script type="text/javascript"> function fileChange(target ...
- js限制上传文件的类型和大小
var maxsize = 6*1024*1024;//6M var errMsg = "上传的附件文件不能超过6M!!!"; var tipMsg = "您的浏览器暂不 ...
随机推荐
- 密码框JPasswordField 的使用
JPasswordField的主要方法为setEchoChar(char c),其中的字符C为回显字符. package first; import javax.swing.*; import jav ...
- Linux下面无线网络配置
原文:http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html 配置 WLAN 特定参数 iwconfig ethX essid ...
- [Shell] shell 脚本循环恢复的问题
在一个shell脚本中,我大概执行了如下一个脚本: ...} do ...} do ...} do done done done 假设上面的sleep 10秒就是代表我的程序需要执行10秒之久.而现在 ...
- Linux设备模型(3)_Uevent【转】
转自:http://www.wowotech.net/device_model/uevent.html 1. Uevent的功能 Uevent是Kobject的一部分,用于在Kobject状态发生改变 ...
- native,strictfp,transient,volatile什么java?
1. native 簡單講,呼叫其他語言(c,c++之類)做出來的dll做法1.利用java做個介面供其他語言實作(也就是宣告成native)2.用javah產出.h:3.用其他語言實現native方 ...
- HDU 6206 Apple【计算几何+高精度Java】
Problem Description Apple is Taotao's favourite fruit. In his backyard, there are three apple trees ...
- HDU 2555 陷阱(模拟,结构体数组)
这道题目意思很明白,有不确定的数据沙包和陷阱,还要排序···那就必须要用结构体+数组 /* 在地面上有N 个大小不等的长方形陷阱,每个陷阱的周长各不相同,每个参赛者都有一个沙包,闭上眼睛把它扔向地面, ...
- pyinstaller对多进程程序的打包
在使用python的第三方库pyinstaller对多进程程序进行打包时,程序不能正常的运行,但是后台却有多个进程一直在使用资源. 解决方法很简单,在if __name__ == '__main__' ...
- Codeforces 1059E. Split the Tree
题目:http://codeforces.com/problemset/problem/1059/E 用倍增可以在nlog内求出每个节点占用一个sequence 时最远可以向父节点延伸到的节点,对每个 ...
- ACM-ICPC 2018 沈阳赛区网络预赛 D. Made In Heaven(第k短路模板)
求第k短路模板 先逆向求每个点到终点的距离,再用dij算法,不会超时(虽然还没搞明白为啥... #include<iostream> #include<cstdio> #inc ...