JS自定义函数对web前端上传的文件进行类型大小判断

 更新时间:2016年10月19日 08:50:58   作者:南阳客  
这篇文章主要介绍了JS自定义函数对web前端上传的文件进行类型大小判断的相关资料,需要的朋友可以参考下

废话不多说了直接给大家贴js代码了。具体代码如下所示:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>web前端对上传的文件进行类型大小判断的js自定义函数</title>
</head>
<body>
<form>
<input type="file" id="fileId"> 
<input type="button" value = "提交" onclick="checkFileSizeAndType(10*1024*1024,['gif','jpg','png'],'fileId');">
</form>
<script>
//参数说明
//maxSize 代表允许最大上传的文件大小,单位是字节
//allowType 代表允许上传的文件类型(后缀) 
//fileId 代表input type=file 框 的id
function checkFileSizeAndType(maxSize,allowType,fileId) {
//默认大小
if(!maxSize){
maxSize=10*1024*1024;
}
//默认类型
if(!allowType){
allowType=new Array('jpg','png'); 
}
//js通过id获取上传的文件对象
var file = document.getElementById(fileId); 
var types =allowType;
var fileInfo = file.files[0];
if(!fileInfo){
alert("请选择文件!");
return false;
}
var fileName = fileInfo.name;
//获取文件后缀名
var file_typename = fileName.substring(
fileName.lastIndexOf('.') + 1, fileName.length);
//定义标志是否可以提交上传
var isUpload = true;
//定义一个错误参数:1代表大小超出 2代表类型不支持
var errNum =0;
if (fileInfo) {
if (fileInfo.size > maxSize) {
isUpload = false;
errNum=1;
} else {
for ( var i in types) {
if (types[i] == file_typename) {
isUpload = true;
return isUpload;
} else {
isUpload = false;
errNum=2;
}
}
}
}
//对错误的类型进行对应的提示
if (!isUpload) {
if(errNum==1){
var size = maxSize/1024/1024;
alert("上传的文件必须为小于"+size+"M的图片!");
}else if(errNum==2){
alert("上传的"+file_typename+"文件类型不支持!只支持"+types.toString()+"格式");
}else{
alert("没有选择文件");
}
file.value="";
return isUpload;
}
}
</script>
</body>
</html>

以上所述是小编给大家介绍的JS自定义函数对web前端上传的文件进行类型大小判断,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • uniapp实现下拉刷新的几种方式小结

    uniapp实现下拉刷新的几种方式小结

    原生的uniapp的下拉刷新是一个普通的加载框,样式真的很单一,下面这篇文章主要总结介绍了uniapp实现下拉刷新的几种方式,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-02-02
  • JavaScript实现简单的轮播图效果

    JavaScript实现简单的轮播图效果

    这篇文章主要为大家详细介绍了JavaScript实现简单的轮播图效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-06-06
  • Async Validator 异步验证使用说明

    Async Validator 异步验证使用说明

    async-validator 是一个异步验证的库,需要传入要验证的数据和验证规则 ,下面通过本文给大家介绍Async Validator 异步验证使用说明,需要的的朋友参考下吧
    2017-07-07
  • 微信小程序实现拖拽功能

    微信小程序实现拖拽功能

    这篇文章主要介绍了微信小程序实现拖拽功能,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09
  • js解决url传递中文参数乱码问题的方法详解

    js解决url传递中文参数乱码问题的方法详解

    前后台用js传参过程中,如果是中文就容易出现乱码,下面这篇文章主要给大家介绍了关于js解决url传递中文参数乱码问题的的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-05-05
  • javascript中Math.random()使用详解

    javascript中Math.random()使用详解

    Math.random() 这个方法相信大家都知道,是用来生成随机数的。不过一般的参考手册时却没有说明如何用这个方法来生成指定范围内的随机数。这次我就来详细的介绍一下Math.random(),以及如何用它来生成制定范围内的随机数。
    2015-04-04
  • JS获取iframe中longdesc属性的方法

    JS获取iframe中longdesc属性的方法

    这篇文章主要介绍了JS获取iframe中longdesc属性的方法,实例分析了longdesc属性的功能及相关的获取技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04
  • 微信小程序实现点击出现弹窗

    微信小程序实现点击出现弹窗

    这篇文章主要为大家详细介绍了微信小程序实现点击出现弹窗,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • js读取json文件片段中的数据实例

    js读取json文件片段中的数据实例

    下面小编就为大家带来一篇js读取json文件片段中的数据实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • JavaScript使用ZeroClipboard操作剪切板

    JavaScript使用ZeroClipboard操作剪切板

    这篇文章主要为大家详细介绍了JavaScript使用ZeroClipboard操作剪切板的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05

最新评论