input上传文件个数控制

HTML:

1     <h3>请上传[2,5]个文件</h3>
2     <form action="" enctype="multipart/form-data">
3         <input type="file" name="file" multiple="multiple" id="file" onchange="fileCountCheck(this,2,5)" />
4     </form>

JavaScript:

 1     /**
 2      * [fileCountCheck 上传文件数量检测]
 3      * @param  {[Object]} filesObj [文件对象]
 4      * @param  {[Number]} minFileNum  [文件数量下限]
 5      * @param  {[Number]} maxFileNum  [文件数量上限]
 6      * @return {[Boolean]}          [真假]
 7      */
 8     function fileCountCheck(filesObj, minFileNum, maxFileNum) {
 9 
10         // console.log(filesObj.files); // 文件对象
11 
12         if (window.File && window.FileList) {
13 
14             var fileCount = filesObj.files.length;
15 
16             if (fileCount < minFileNum || fileCount > maxFileNum) {
17 
18                 // 不符合数量的处理
19                 window.alert('文件数不能小于'   minFileNum   '个,也不能超过'   maxFileNum   '个,你选择了'   fileCount   '个');
20 
21                 return false;
22 
23             } else {
24 
25                 // 符合数量的处理
26                 window.alert('符合规定');
27 
28                 return true;
29 
30             }
31 
32         } else {
33 
34             // 不支持FileAPI
35             window.alert('抱歉,你的浏览器不支持FileAPI,请升级浏览器!');
36 
37             return false;
38 
39         }
40 
41     }

除此之外,还能控制文件的大小或是文件格式等。


更多专业前端知识,请上 【猿2048】www.mk2048.com
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值