1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <script type="text/javascript">
  5. var isIE = /msie/i.test(navigator.userAgent) && !window.opera;
  6. function fileChange(target,id) {
  7. var fileSize = 0;
  8. var filetypes =[".jpg",".png",".rar",".txt",".zip",".doc",".ppt",".xls",".pdf",".docx",".xlsx"];
  9. var filepath = target.value;
  10. var filemaxsize = 1024*2;//2M
  11. if(filepath){
  12. var isnext = false;
  13. var fileend = filepath.substring(filepath.indexOf("."));
  14. if(filetypes && filetypes.length>0){
  15. for(var i =0; i<filetypes.length;i++){
  16. if(filetypes[i]==fileend){
  17. isnext = true;
  18. break;
  19. }
  20. }
  21. }
  22. if(!isnext){
  23. alert("不接受此文件类型!");
  24. target.value ="";
  25. return false;
  26. }
  27. }else{
  28. return false;
  29. }
  30. if (isIE && !target.files) {
  31. var filePath = target.value;
  32. var fileSystem = new ActiveXObject("Scripting.FileSystemObject");
  33. if(!fileSystem.FileExists(filePath)){
  34. alert("附件不存在,请重新输入!");
  35. return false;
  36. }
  37. var file = fileSystem.GetFile (filePath);
  38. fileSize = file.Size;
  39. } else {
  40. fileSize = target.files[0].size;
  41. }
  42. var size = fileSize / 1024;
  43. if(size>filemaxsize){
  44. alert("附件大小不能大于"+filemaxsize/1024+"M!");
  45. target.value ="";
  46. return false;
  47. }
  48. if(size<=0){
  49. alert("附件大小不能为0M!");
  50. target.value ="";
  51. return false;
  52. }
  53. }
  54. </script>
  55. </head>
  56. <body>
  57. <input type="file" name="contractFileName" style="width: 500px;" onchange="fileChange(this);"/>
  58. </body>
  59. </html>

前端js限制上传文件类型及大小(1)的更多相关文章

  1. js限制上传文件类型和大小

    <html> <head> <script type="text/javascript"> function fileChange(target ...

  2. JS判断上传文件类型

    /*   * 判断图片类型   */    function checkImgType(ths){        if (ths.value == "") {            ...

  3. JS 判断上传文件类型

    var video_src_file = $("#video_src_file").val(); var fileTypes = new Array("flv" ...

  4. input type='file'限制上传文件类型

    前端与后台数据进行对接时,就避免不了要使用ajax进行http请求,常用的请求就两个post与get:然而常见的post请求的需求是文件上传,可能我一说到文件上传大家都觉得so  easy啊,没什么嘛 ...

  5. js能否上传文件夹

    文件夹上传:从前端到后端 文件上传是 Web 开发肯定会碰到的问题,而文件夹上传则更加难缠.网上关于文件夹上传的资料多集中在前端,缺少对于后端的关注,然后讲某个后端框架文件上传的文章又不会涉及文件夹. ...

  6. 基于Flask开发网站 -- 前端Ajax异步上传文件到后台

    大家好,我是辰哥~ 辰哥最近利用空闲时间在写一个在线可视化平台,过程中也觉得一些技术还是比较有意思的,所以就以模块化的形式分享出来.如:从网页界面(前端)上传文件到服务器(后端). 放一下该模块的界面 ...

  7. 前端之web上传文件的方式

    前端之web上传文件的方式 本节内容 web上传文件方式介绍 form上传文件 原生js实现ajax上传文件 jquery实现ajax上传文件 form+iframe构造请求上传文件 1. web上传 ...

  8. 第九篇:web之前端之web上传文件的方式

    前端之web上传文件的方式   前端之web上传文件的方式 本节内容 web上传文件方式介绍 form上传文件 原生js实现ajax上传文件 jquery实现ajax上传文件 form+iframe构 ...

  9. HTML5中的input type为file控件限制上传文件类型及扩展

    简单介绍 input file控件限制上传文件类型如下:1.文件类型中间用,分开:2.html和htm这样的要写成两个: 3实例: <input type="file" na ...

随机推荐

  1. Android MVP模式实现组件和业务逻辑分离

    1,Activity代码展示,只需要一下3行重要代码即可完成任何复杂的逻辑 /** * 登录界面 * * @author lipanquan */public class LoginActivity ...

  2. Dev GridView RowCellClick事件与MouseDown事件

    GridView处于可编辑状态,左键点击默认为“进入编辑”. 将GridView的OptionsColumn.AllowEdit设置为false后左键可触发RowCellClick.但有时候,既希望G ...

  3. docker(5)常用命令

    1.docker docker安装国内源 $ sudo yum-config-manager \ --add-repo \ https://mirrors.ustc.edu.cn/docker-ce/ ...

  4. vue混入(mixins)

    混入(mixins)是一种分发vue组件中可复用功能的非常灵活的方式.混入对象可以包含任意组件选项. 当组件使用混入对象时,所以混入对象的选项将被混入该组件本身选项,当组件和混入对象含有同名选项时,这 ...

  5. python django 基本测试 及调试

    #########20181110from django.db import modelsfrom blog.models import Article, Author, TagAuthor.obje ...

  6. JS 中Math.ceil()、Math.floor()和Math.round()的区别

    var arg1 = 12.2; var arg2 = 12.5; var arg3 = 12.7; ceil():将小数部分一律向整数部分进位 var c1 = Math.ceil(arg1); v ...

  7. c++中代理类的学习

    https://blog.csdn.net/lcg910978041/article/details/51468680 C++代理类是为了解决这样的问题: 容器通常只能包含一种类型的对象,所以很难在容 ...

  8. c++中 重载 覆盖 隐藏的区别 附加 mutable笔记

    成员函数被重载的特征有: 1) 相同的范围(在同一个类中): //2) 函数名字相同: 3) 参数不同: 4) virtual关键字可有可无. 覆盖的特征有: 1) 不同的范围(分别位于派生类与基类) ...

  9. Silverlight 用DependencyProperty 自定义ImageButton控件 定义属性

    为ImageButton自定义IconSource和Contents属性 xaml代码 <UserControl x:Class="SilverlightCreate.Silverli ...

  10. Matrix Chain Multiplication (堆栈)

    题目链接:https://vjudge.net/problem/UVA-442 题目大意:输入n个矩阵的维度和一些矩阵链乘表达式,输出乘法的次数.如果乘法无法进行,输出error. 假定A是m*n的矩 ...