<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表单提交</title>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>
</head>
<body> <!--文件上传-->
<form id="uploadForm" enctype="multipart/form-data">
<div id="fileId" style='display: none'><!--//style='display: none'--> </div>
<div id="img-con" class="panel panel-default imgdiv"> </div>
<p id="em">未上传文件</p>
<input type="button" value="点击事件" name="点击事件" onclick="inputClieck()"><br>
<input type="submit">
</form>
</body>
<script> var inputArray = []; function inputClieck() {
var newInput = document.createElement("input");
newInput.type = 'file';
newInput.name = "files";
var idid = new Date().getTime();
newInput.id = idid;
$("#fileId").append(newInput);
inputArray.push(idid); $("#" + idid).click(); $("#" + idid).change(function (e) {
console.log('change事件', e);
console.log(this)
var path= getImgPath(this.files[0]);
console.log("--------"+path); var arr = path.split("/");
var strPath='--------:null/'+arr[arr.length-1];
console.log(strPath)
var a=createImg(path,idid);
$("#em").append(a) });
var newline = document.createElement("br");//创建一个BR标签是为能够换行!
$("#fileId").append(newline);
} //动态显示上传图片
function uploadImg(path) {
var imgDiv = $("#img-con");
var $img = $("<img/>");
$img.attr("src", path);
imgDiv.append($img);
} //获取要上传单张图片的本地路径
function getImgPath(file) { var url = null;
if(window.createObjectURL != undefined) { // basic
url = window.createObjectURL(file);
} else if(window.URL != undefined) { // mozilla(firefox)
url = window.URL.createObjectURL(file);
} else if(window.webkitURL != undefined) { // webkit or chrome
url = window.webkitURL.createObjectURL(file);
}
return url;
} function createImg(src,idid) {
var box = $("<div class='img-box uploadfile'>"); var newImg = document.createElement("img");
newImg.src=src;
newImg.id="img"+idid;
newImg.height=100;
newImg.width=100;
newImg.onclick='showImagePopup(\"" + src + "\")'; //box.append("<img src='" + src + "' height='100px' width='100px' onclick='showImagePopup(\"" + src + "\")'>");
box.append(newImg);
return box;
} function showImagePopup(src) {
if (getClass(src) === "String") {
var popup = $("<img></img");
popup.addClass("image-popup").attr("src", src);
var shade = $("<div></div>").addClass("shade");
$(document.body).append(shade.append(popup));
shade.click(function () {
$(this).remove();
});
popup.fadeIn(200);
// popup.click(function() {
// window.event ? window.event.cancelBubble = true :
// window.event.stopPropagation();
// });
}
} </script>
</html>

html多文件上传,可支持预览的更多相关文章

  1. dwz+jquery+fileupload+springmvc实现文件上传 及图片预览

    1 前台jsp:文件的上传利用了iframe实现局部刷新功能.使用了apache的fileupload组件,用到的jar: commons-fileupload.jar,commons-io.jarD ...

  2. php文件上传及头像预览

    php文件上传原理是通过form表单的enctype="multipart/form-data"属性将文件临时放到wamp文件夹中的tmp目录下,再通过后台php 程序将文件保存在 ...

  3. HTML5文件上传前本地预览

    HTML5之FileReader的使用 HTML5定义了FileReader作为文件API的重要成员用于读取文件,根据W3C的定义,FileReader接口提供了读取文件的方法和包含读取结果的事件模型 ...

  4. javascript实现文件上传之前的预览功能

    1.首先要给上传文件表单控件和图片控件设置name属性 <div class="form-group">                    <label fo ...

  5. jsp+springmvc实现文件上传、图片上传和及时预览图片

    1.多文件上传:http://blog.csdn.net/a1314517love/article/details/24183273 2.单文件上传的简单示例:http://blog.csdn.net ...

  6. Ajax上传图片以及上传之前先预览

    手头上有几个小项目用到了easyUI,一开始决定使用easyUI就注定了项目整体上前后端分离,基本上所有的请求都采用Ajax来完成.在文件上传的时候用到了Ajax上传文件,以及图片在上传之前的预览效果 ...

  7. java多图片上传--前端实现预览--图片压缩 、图片缩放,区域裁剪,水印,旋转,保持比例。

    java多图片上传--前端实现预览 前端代码: https://pan.baidu.com/s/1cqKbmjBSXOhFX4HR1XGkyQ 解压后: java后台: <!--文件上传--&g ...

  8. web 图片上传实现本地预览

    在说上传之前先说说如何替换or美化浏览器自带的简陋上传按钮(自定义自己的上传按钮 如:img): 1.将自定义上传按钮上方添加 input file 框,实现input实现透明处理. 2.对自定义上传 ...

  9. [.ashx檔?泛型处理例程?]基础入门#2....FileUpload上传前,预览图片(两种作法--ashx与JavaScript)

    原文出處  http://www.dotblogs.com.tw/mis2000lab/archive/2013/08/20/ashx_beginner_02_fileupload_picture_p ...

  10. 聊一聊jquery文件上传(支持多文件上传)

    谈到文件上传,现在一般都用现成的组件可以使用.PC端的可以使用uploadify.针对微网站H5也有uploadifive.但是这组件并不能满足各种场景的需求,例如:预览 切图 放大缩小,取消之类的. ...

随机推荐

  1. 牛客网_Go语言相关练习_选择题(3)

    题目来源于牛客网 一.选择题 Go语言自带垃圾回收机制. 如果是值传递的话子函数对map修改不会影响父函数中的map,如果是地址传递则会影响. go语言编译器会自动在以标识符.数字字面量.字母字面量. ...

  2. ubuntu apache2下目录结构以及重写规则

    ubuntu apache2下目录结构 在Windows下,Apache的配置文件通常只有一个,就是httpd.conf.但我在Ubuntu Linux上用apt-get install apache ...

  3. android bionic c 对比 gnu c

    Bionic 是一个BSD标准的C库,用在android平台上面的. Android 是一个不完全开源的系统. android的kernel使用的是基于linux的,linux使用的是GPL2的开源标 ...

  4. 【中间件安全】Nginx 安全加固规范

    1. 适用情况 适用于使用Nginx进行部署的Web网站. 2. 技能要求 熟悉Nginx配置,能够Nginx进行部署,并能针对站点使用Nginx进行安全加固. 3. 前置条件 1. 根据站点开放端口 ...

  5. python 字符串编码解码和格式化问题

    转自:https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/0013868191962 ...

  6. arthas使用分享

    文章目录准备启动Demo进入arthas控制台基础命令jvm相关class/classloader相关monitor/watch/trace相关options管道后台异步任务Web Console其他 ...

  7. JVM的内存划分以及常用参数

    JVM的主要划分为: 堆内存,虚拟机栈,方法区,程序计数器,本地方法栈 堆内存: 这部分区域是各个线程共享的,java的大部分对象都是储存在堆中. 1.堆在分配对象内存区域的时候可以分为两种,第一种叫 ...

  8. RandomForest中的feature_importance

    随机森林算法(RandomForest)的输出有一个变量是 feature_importances_ ,翻译过来是 特征重要性,具体含义是什么,这里试着解释一下. 参考官网和其他资料可以发现,RF可以 ...

  9. hashlib模块configparser模块logging模块

    hashlib模块 算法介绍 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 什么是摘要算法呢?摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长 ...

  10. day_10 py 字典

    #!/usr/bin/env/python#-*-coding:utf-8-*-'''字典: (就是增加个索引名字,然后归类了一下) infor = {键:值,键:值} 列表存储相同的信息随着列表里面 ...