客户端js判断文件类型和文件大小即限制上传大小

 更新时间:2013年11月20日 15:42:56   作者:  
需要脚本在客户端判断大小和文件类型,由于网上没有适合的,就自己写了一个并测试 文件上传大小限制的一个例子,在此与大家分享下
由于项目需要!需要脚本在客户端判断大小和文件类型!自己网上找资料找的好辛苦!索性自己写了一个并测试 文件上传大小限制的一个例子,兼容ie6,ie7,ie8 ,Google Chrome,ff等浏览器
复制代码 代码如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
var isIE = /msie/i.test(navigator.userAgent) && !window.opera;
function fileChange(target,id) {
var fileSize = 0;
var filetypes =[".jpg",".png",".rar",".txt",".zip",".doc",".ppt",".xls",".pdf",".docx",".xlsx"];
var filepath = target.value;
var filemaxsize = 1024*2;//2M
if(filepath){
var isnext = false;
var fileend = filepath.substring(filepath.indexOf("."));
if(filetypes && filetypes.length>0){
for(var i =0; i<filetypes.length;i++){
if(filetypes[i]==fileend){
isnext = true;
break;
}
}
}
if(!isnext){
alert("不接受此文件类型!");
target.value ="";
return false;
}
}else{
return false;
}
if (isIE && !target.files) {
var filePath = target.value;
var fileSystem = new ActiveXObject("Scripting.FileSystemObject");
if(!fileSystem.FileExists(filePath)){
alert("附件不存在,请重新输入!");
return false;
}
var file = fileSystem.GetFile (filePath);
fileSize = file.Size;
} else {
fileSize = target.files[0].size;
}

var size = fileSize / 1024;
if(size>filemaxsize){
alert("附件大小不能大于"+filemaxsize/1024+"M!");
target.value ="";
return false;
}
if(size<=0){
alert("附件大小不能为0M!");
target.value ="";
return false;
}
}
</script>
</head>
<body>
<input type="file" name="contractFileName" style="width: 500px;" onchange="fileChange(this);"/>
</body>
</html>

相关文章

  • JS实现表单全选以及取消全选实例

    JS实现表单全选以及取消全选实例

    这篇文章主要为大家详细介绍了JS实现表单全选以及取消全选实例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • uniapp使用第三方UI库uview-plus的方法

    uniapp使用第三方UI库uview-plus的方法

    uview-plus是uni-app全面兼容nvue的uni-app生态框架,全面的组件和便捷的工具会让您信手拈来,下面这篇文章主要给大家介绍了关于uniapp使用第三方UI库uview-plus的方法,需要的朋友可以参考下
    2023-04-04
  • JS实现数组去重及数组内对象去重功能示例

    JS实现数组去重及数组内对象去重功能示例

    这篇文章主要介绍了JS实现数组去重及数组内对象去重功能,结合实例形式分析了ES5与ES6两种版本针对数组去重的相关操作技巧,需要的朋友可以参考下
    2019-02-02
  • JS 实现10进制转换36进制的示例代码

    JS 实现10进制转换36进制的示例代码

    这篇文章主要介绍了JS实现10进制转换36进制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • extjs中form与grid交互数据(record)的方法

    extjs中form与grid交互数据(record)的方法

    这篇文章介绍了extjs中form与grid交互数据(record)的方法,有需要的朋友可以参考一下
    2013-08-08
  • javascript使用activex控件的代码

    javascript使用activex控件的代码

    最近公司项目用到了avtivex控件。以前从来没有用过。我把最近到处找到的使用方法整理一下。
    2011-01-01
  • 20个拿来就能用的JavaScript技巧分享

    20个拿来就能用的JavaScript技巧分享

    这篇文章主要来和大家一起探讨一下20 种 JavaScript 技巧和窍门,每种技巧和窍门都有通俗易懂的示例,让我们一起来提升你的 JavaScript 技能吧
    2023-10-10
  • 原生js仿jq判断当前浏览器是否为ie,精确到ie6~8

    原生js仿jq判断当前浏览器是否为ie,精确到ie6~8

    这篇文章主要介绍了原生js仿jq判断当前浏览器是否为ie,精确到ie6~8,需要的朋友可以参考下
    2014-08-08
  • uni-app使用swiper实现轮播图的方法

    uni-app使用swiper实现轮播图的方法

    做音乐播放器小程序时,因为swiper的问题耽误不少时间,所以下面这篇文章主要给大家介绍了关于uni-app使用swiper实现轮播图的相关资料,需要的朋友可以参考下
    2022-11-11
  • javascript中字体浮动效果的简单实例演示

    javascript中字体浮动效果的简单实例演示

    这篇文章主要介绍了javascript中字体浮动效果的简单实例演示,在一些网站上经常遇到当鼠标移导航栏的时候,能够使其弹出下拉选项,现在就演示一下这种功能,感兴趣的小伙伴们可以参考一下
    2015-11-11

最新评论