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

摘要:
:jpg|gif|png|jpeg)$/i.test)){5alert;6if{//forIE7target.select();//selectthefile,and clearselection8document.selection.clear());9}elseif{//foroperata10target.type=“text”;target.type:“file”;11}elsetarget.value=“”;//FF、Chrome、Safari2return;13} 否则{14return;//alert;//或您无能为力。15}1617//检测上载文件的大小18variasIE=/msie/i.test&&!
 1 //检测文件大小和类型
 2 function fileChange(target){
 3 //检测上传文件的类型
 4 if(!(/(?:jpg|gif|png|jpeg)$/i.test(target.value))) {
 5 alert("只允许上传jpg|gif|png|jpeg格式的图片");
 6 if(window.ActiveXObject) {//for IE
 7 target.select();//select the file ,and clear selection
 8 document.selection.clear();
 9 } else if(window.opera) {//for opera
10 target.type="text";target.type="file";
11 } else target.value="";//for FF,Chrome,Safari
12 return;
13 } else {
14 return; //alert("ok");//or you can do nothing here.
15 }
16 
17 //检测上传文件的大小
18 var isIE = /msie/i.test(navigator.userAgent) && !window.opera;
19 var fileSize = 0;
20 if (isIE && !target.files){
21 var filePath = target.value;
22 var fileSystem = new ActiveXObject("Scripting.FileSystemObject");
23 var file = fileSystem.GetFile (filePath);
24 fileSize = file.Size;
25 } else {
26 fileSize = target.files[0].size;
27 }
28 var size = fileSize / 1024;
29 if(size>(500)){
30 alert("文件大小不能超过500KB");
31 if(window.ActiveXObject) {//for IE
32 target.select();//select the file ,and clear selection
33 document.selection.clear();
34 } else if(window.opera) {//for opera
35 target.type="text";target.type="file";
36 } else {
37 target.value="";//for FF,Chrome,Safari
38 }
39 return;
40 }else{
41 return;
42 }
43 } 

免责声明:文章转载自《js判断上传文件的类型和大小》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇js侧边菜单移动界面UI颜色设计下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

原生JS实现双向链表

1.前言 双向链表和单向链表的区别在于,在链表中,一个节点只有链向下一个节点的链接,而在双向链表中,链接是双向的:一个链向下一个元素,另一个链向前一个元素,如下图所示: 从图中可以看到,双向链表中,在每个节点Node里有prev属性(指向上一个节点的指针)和next属性(指向下一个节点的指针),并且在链表中也有head属性(用来存储链表第一项的引用)和ta...

js解析Json字符串的方法

要把一个xml字符串转(“1,2,3,4,5,6,7,8,1,2”)换成数组的形式,每个值都应该是number类型的,想当然的就用了split方法,结果。。。问题来了,服务器要求数组的值是数字,而split是字符方法,所产生的数组也是字符串,麻烦来了。。这么大的数据量总不能一个一个的for循环parseInt吧,想想就头痛! 天无绝人之路,原来js这...

JS经纬度坐标转换

var GPS = { PI : 3.14159265358979324, x_pi : 3.14159265358979324 * 3000.0 / 180.0, delta : function (lat, lon) { // Krasovsky 1940 // // a = 63...

js 浏览器窗口 刷新、关闭事件

1、beforeunload 当浏览器窗口关闭或者刷新时,会触发beforeunload事件。当前页面不会直接关闭,可以点击确定按钮关闭或刷新,也可以取消关闭或刷新。 2、onbeforeunload 当窗口即将被卸载(关闭)时,会触发该事件.此时页面文档依然可见,且该事件的默认动作可以被取消。 各大浏览器测试结果: 火狐浏览器 刷新时:先执行 onbef...

js设置div透明度

原生js设置透明度 为了兼容IE与其他浏览器对透明度的设置,我们需要对以上两种样式分别进行设置; 复制代码代码如下:var alpha = 30; //透明度值变量 var oDiv = document.getElementById('div1'); //获取DOM元素对象 oDiv.style.filter = 'alpha(opacity:'+alp...

动态加载JS函数

一般性的,当我们需要加载js文件的时候都会使用script标签来实现,类似于如下代码: 代码如下: <script type="text/javascript" src="http://t.zoukankan.com/example.js"></script> 但是直接使用script标签来加载js文件会有如下一些缺点: 1...