您的位置:首页 > Web前端

前端js限制上传文件类型及大小(1)

2017-11-09 13:51 447 查看
<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>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: