• html多文件上传,可支持预览


      1 <!DOCTYPE html>
      2 <html lang="en">
      3 <head>
      4   <meta charset="UTF-8">
      5   <title>表单提交</title>
      6   <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>
      7 </head>
      8 <body>
      9 
     10 <!--文件上传-->
     11 <form id="uploadForm" enctype="multipart/form-data">
     12   <div id="fileId" style='display: none'><!--//style='display: none'-->
     13 
     14   </div>
     15   <div id="img-con" class="panel panel-default imgdiv">
     16 
     17 
     18   </div>
     19   <p id="em">未上传文件</p>
     20   <input type="button" value="点击事件" name="点击事件" onclick="inputClieck()"><br>
     21   <input type="submit">
     22 </form>
     23 </body>
     24 <script>
     25 
     26   var inputArray = [];
     27 
     28   function inputClieck() {
     29     var newInput = document.createElement("input");
     30     newInput.type = 'file';
     31     newInput.name = "files";
     32     var idid = new Date().getTime();
     33     newInput.id = idid;
     34     $("#fileId").append(newInput);
     35     inputArray.push(idid);
     36 
     37     $("#" + idid).click();
     38 
     39 
     40     $("#" + idid).change(function (e) {
     41       console.log('change事件', e);
     42       console.log(this)
     43       var path= getImgPath(this.files[0]);
     44       console.log("--------"+path);
     45 
     46       var arr = path.split("/");
     47       var strPath='--------:null/'+arr[arr.length-1];
     48       console.log(strPath)
     49       var a=createImg(path,idid);
     50       $("#em").append(a)
     51 
     52     });
     53     var newline = document.createElement("br");//创建一个BR标签是为能够换行!
     54     $("#fileId").append(newline);
     55   }
     56 
     57   //动态显示上传图片
     58   function uploadImg(path) {
     59     var imgDiv = $("#img-con");
     60     var $img = $("<img/>");
     61     $img.attr("src", path);
     62     imgDiv.append($img);
     63   }
     64 
     65 
     66 
     67 
     68   //获取要上传单张图片的本地路径
     69   function getImgPath(file) {
     70 
     71 
     72     var url = null;
     73     if(window.createObjectURL != undefined) { // basic
     74       url = window.createObjectURL(file);
     75     } else if(window.URL != undefined) { // mozilla(firefox)
     76       url = window.URL.createObjectURL(file);
     77     } else if(window.webkitURL != undefined) { // webkit or chrome
     78       url = window.webkitURL.createObjectURL(file);
     79     }
     80     return url;
     81   }
     82 
     83 
     84 
     85 
     86   function createImg(src,idid) {
     87     var box = $("<div class='img-box uploadfile'>");
     88 
     89     var newImg = document.createElement("img");
     90     newImg.src=src;
     91     newImg.id="img"+idid;
     92     newImg.height=100;
     93     newImg.width=100;
     94     newImg.onclick='showImagePopup("" + src + "")';
     95 
     96     //box.append("<img src='" + src + "' height='100px' width='100px' onclick='showImagePopup("" + src + "")'>");
     97     box.append(newImg);
     98     return box;
     99   }
    100 
    101   function showImagePopup(src) {
    102     if (getClass(src) === "String") {
    103       var popup = $("<img></img");
    104       popup.addClass("image-popup").attr("src", src);
    105       var shade = $("<div></div>").addClass("shade");
    106       $(document.body).append(shade.append(popup));
    107       shade.click(function () {
    108         $(this).remove();
    109       });
    110       popup.fadeIn(200);
    111       // popup.click(function() {
    112       // window.event ? window.event.cancelBubble = true :
    113       // window.event.stopPropagation();
    114       // });
    115     }
    116   }
    117 
    118 
    119 </script>
    120 </html>
  • 相关阅读:
    关于图片或者文件在数据库的存储方式归纳
    js默认比较第一个数字大小
    项目中empty遇到的一个问题
    thinkphp 一个页面使用2次分页的方法
    mysql处理海量数据时的一些优化查询速度方法
    项目中的一个和分页总数有关的子查询
    Mysql乱码
    HTML 5 <input> placeholder 属性
    form 表单jquery验证插件使用
    在网站制作中随时可用的10个 HTML5 代码片段
  • 原文地址:https://www.cnblogs.com/limn/p/10793686.html
Copyright © 2020-2023  润新知