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>
还有很多不足的地方,大家多多提意见喔!
web前端对上传的文件进行类型大小判断的js自定义函数的更多相关文章
- java web service 上传下载文件
1.新建动态web工程youmeFileServer,新建包com,里面新建类FileProgress package com; import java.io.FileInputStream; imp ...
- 转载 jQuery和js自定义函数和文件的方法(全网最全)
jQuery和js自定义函数和文件的方法(全网最全) 版权声明:本文为像雾像雨又像风_http://blog.csdn.net/topdandan的原创文章,未经允许不得转载. https:// ...
- web api 如何通过接收文件流的方式,接收客户端及前端上传的文件
服务端接收文件流代码: public async Task<HttpResponseMessage> ReceiveFileByStream() { var stream = HttpCo ...
- web前端:上传文件夹(需支持多浏览器)
在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现. 先说下要求: PC端全平台支持,要求支持Windows,Mac,Linux 支持所 ...
- web页面上传大文件有没有好的解决方案
本人在2010年时使用swfupload为核心进行文件的批量上传的解决方案.见文章:WEB版一次选择多个文件进行批量上传(swfupload)的解决方案. 本人在2013年时使用plupload为核心 ...
- web uploader 上传大文件总结
这里只写后端的代码,基本的思想就是,前端将文件分片,然后每次访问上传接口的时候,向后端传入参数:当前为第几块文件,和分片总数 下面直接贴代码吧,一些难懂的我大部分都加上注释了: 上传文件实体类: 看得 ...
- java web图片上传和文件上传
图片上传和文件上传本质上是一样的,图片本身也是文件.文件上传就是将图片上传到服务器,方式虽然有很多,但底层的实现都是文件的读写操作. 注意事项 1.form表单一定要写属性enctype=" ...
- 怎么实现web端上传超大文件
1.介绍enctype enctype 属性规定发送到服务器之前应该如何对表单数据进行编码. enctype作用是告知服务器请求正文的MIME类型(请求消息头content-type的作用一样) 1. ...
- php 上传文件并对上传的文件进行简单验证(错误信息,格式(防伪装),大小,是否为http上传)
<body> <?php /** *验证错误 *如果有错,就返回错误,如果没错,就返回null */ function check($file) { //1:验证是否有误 if($f ...
随机推荐
- Java NIO API详解
在JDK 1.4以前,Java的IO操作集中在java.io这个包中,是基于流的同步(blocking)API.对于大多数应用来说,这样的API使用很方便,然而,一些对性能要求较高的应用,尤其是服务端 ...
- mysql安装2
linux下安装mysql-5.1.51.tar.gz (2010-10-27 10:59:26) 转载▼ 标签: mysql 数据库 tar.gz安装 杂谈 分类: Mysql数据库 MySQL h ...
- 【HDOJ】1813 Escape from Tetris
bfs预处理一点到边界的最小距离,IDA*求出可行方案.注意按字典序初始化dir数组.并且存在中间点全为1,边界含0的可能性(wa了很多次).此时不输出任何命令. /* 1813 */ #includ ...
- jquery禁用右键、文本选择功能、刷新
//禁用右键.文本选择功能.刷新 $(document).bind(“contextmenu”,function(){return false;}); $(document).bind(“select ...
- 【动态规划】Vijos P1143 三取方格数(NOIP2000提高组)
题目链接: https://vijos.org/p/1143 题目大意: NxN的矩阵,每个值只能取一次,从(1,1)走到(n,n)走三次能取得的最大值. 题目思路: [动态规划] f[x1][y1] ...
- Delphi NativeXml用法攻略 转
NativeXml可以在官网上下载,下载后将文件夹放在指定地方,打开DELPHI在其环境变量中引用NativeXml路径,然后在程序中引用NativeXml单元,我们就可以使用NativeXml了. ...
- iOS __block用法
没有__block qualifier的primitive c types会直接在创建block的时候被capture到block里.有__block qualifier的话,会在调用block的时候 ...
- bzoj1588 [HNOI2002]营业额统计(Treap)
1588: [HNOI2002]营业额统计 Time Limit: 5 Sec Memory Limit: 162 MBSubmit: 11485 Solved: 4062[Submit][Sta ...
- DFS Zoj 2110
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2110 //2110 #include<stdio.h> #in ...
- [Locked] Smallest Rectangle Enclosing Black Pixels
An image is represented by a binary matrix with 0 as a white pixel and 1 as a black pixel. The black ...