js实现动态添加上传文件页面


Posted in Javascript onOctober 22, 2018

发邮件是需要添加一些文件,每添加一个文件,页面上可以显示一个表单文件上传选项。

js实现动态添加上传文件页面

此功能为:初始时刻只有一个添加按钮,当点击添加文件时,会增加一个选择文件和删除区域,同时显示上传按钮,当点击删除,此行选择文件行消失,当所有选择文件项都消失时,上传按钮将被隐藏起来。下面是实例代码:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
 <head>
 
 <title>动态添加文件上传列表</title>
 <script type="text/javascript">
  var num=0;
  function addFile(event){
  //创建一个div标签,用以包含一个input标签和删除按钮
  var innerdiv = document.createElement("div");
  
  //创建一个input标签
  var inputNode = document.createElement("input");
  inputNode.name = "fileName";
  inputNode.type="file";
  
  //创建一个删除按钮
  var delNode = document.createElement("input");
  delNode.name = "del";
  delNode.type = "button";
  delNode.value="删除";
  
  var submit = document.getElementById("submit");
  
  //删除当前删除按钮所在的标签,为此按钮点击事件创建一个处理函数
  delNode.onclick = function d(){
  this.parentNode.parentNode.removeChild(this.parentNode); //删除此div区域
  var fileNodes = document.getElementsByName("fileName");
  //当没有上传文件时,隐藏submit按钮
  if(fileNodes.length==0){
  submit.style.display="none";
  }
  };
  
  innerdiv.appendChild(inputNode);
  innerdiv.appendChild(delNode);
  
  var div = document.getElementById("file");
  div.appendChild(innerdiv);
  
  submit.style.display="block";
  
  }
 </script>
 
 </head>
 
 <body>
 <form id="upload" action="${pageContext.request.contextPath }/servlet/FileUploadServlet" enctype="multipart/form-data" method="post">
  上传文件:<input type="button" value="添加文件" onclick="addFile(this.parentNode)"/> <br />
  <table>
  <div id="file">
  
  </div>
  </table>
  <input id="submit" type="submit" value="上传" style="display: none"/>
 </form>
 </body>
</html>

此实例代码中,addFile将动态增加一个div区域,div区域包含一个file input标签和删除按钮。

动态创建一个input标签示例:

//创建一个div标签,用以包含一个input标签和删除按钮
 var innerdiv = document.createElement("div");
  
//创建一个input标签
 var inputNode = document.createElement("input");
 inputNode.name = "fileName";
 inputNode.type="file";
 innerdiv.appendChild(inputNode);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery下组织javascript代码(js函数化)
Aug 25 Javascript
animate动画示例(泪奔的小孩)及stop和delay的使用
May 06 Javascript
javascript实现微信分享
Dec 23 Javascript
JavaScript获取页面中第一个锚定文本的方法
Apr 03 Javascript
Hammer.js+轮播原理实现简洁的滑屏功能
Feb 02 Javascript
jquery trigger实现联动的方法
Feb 29 Javascript
JS组件系列之Bootstrap table表格组件神器【二、父子表和行列调序】
May 10 Javascript
jQuery学习笔记——jqGrid的使用记录(实现分页、搜索功能)
Nov 09 Javascript
Vue.js用法详解
Nov 13 Javascript
JS+canvas画布实现炫酷的旋转星空效果示例
Feb 13 Javascript
javascript实现简易聊天室
Jul 12 Javascript
Cordova(ionic)项目实现双击返回键退出应用
Sep 17 Javascript
Javascript 实现 Excel 导入生成图表功能
Oct 22 #Javascript
js实现动态增加文件域表单功能
Oct 22 #Javascript
深入浅析Node.js 事件循环、定时器和process.nextTick()
Oct 22 #Javascript
js实现input密码框显示/隐藏功能
Sep 10 #Javascript
Vue slot用法(小结)
Oct 22 #Javascript
TypeScript基础入门教程之三重斜线指令详解
Oct 22 #Javascript
vue项目中使用Hbuilder打包app 设置沉浸式状态栏的方法
Oct 22 #Javascript
You might like
浅谈php中mysql与mysqli的区别分析
2013/06/10 PHP
PHP分页效率终结版(推荐)
2013/07/01 PHP
Yii使用find findAll查找出指定字段的实现方法
2014/09/05 PHP
magento后台无法登录解决办法的两种方法
2016/12/09 PHP
jQuery Tools tab(幻灯片)
2012/07/14 Javascript
浅析return false的正确使用
2013/11/04 Javascript
js实现的点击数量加一可操作数据库
2014/05/09 Javascript
jQuery ajax时间差导致的变量赋值问题分析
2016/01/22 Javascript
百度坐标(BD09)、国测局坐标(火星坐标,GCJ02)、和WGS84坐标系之间的转换
2016/02/19 Javascript
TypeOf这些知识点你了解吗
2016/02/21 Javascript
BootStrap中jQuery插件Carousel实现轮播广告效果
2017/03/27 jQuery
jQuery+ajax读取json数据并按照价格排序示例
2018/03/28 jQuery
Node.js中你不可不精的Stream(流)
2018/06/08 Javascript
layui获取选中行数据的实例讲解
2018/08/19 Javascript
Vue 路由间跳转和新开窗口的方式(query、params)
2019/12/25 Javascript
Javascript中Math.max和Math.max.apply的区别和用法详解
2020/08/24 Javascript
JavaScript常用8种数组去重代码实例
2020/09/09 Javascript
[02:04]2018DOTA2亚洲邀请赛Secret赛前采访
2018/04/03 DOTA
Python安装第三方库的3种方法
2015/06/21 Python
Python使用add_subplot与subplot画子图操作示例
2018/06/01 Python
详解Python3中setuptools、Pip安装教程
2019/06/18 Python
Python获取好友地区分布及好友性别分布情况代码详解
2019/07/10 Python
Windows平台Python编程必会模块之pywin32介绍
2019/10/01 Python
python安装gdal的两种方法
2019/10/29 Python
解决Python安装cryptography报错问题
2020/09/03 Python
Python Pandas数据分析工具用法实例
2020/11/05 Python
python如何写个俄罗斯方块
2020/11/06 Python
python实现xml转json文件的示例代码
2020/12/30 Python
你应该知道的30个css选择器
2014/03/19 HTML / CSS
HTML5 video播放器全屏(fullScreen)方法实例
2015/04/24 HTML / CSS
全球速卖通西班牙站:AliExpress西班牙
2017/10/30 全球购物
25岁生日感言
2014/01/13 职场文书
优秀幼教自荐信
2014/02/03 职场文书
读书笔记格式
2015/07/02 职场文书
2016七一建党节慰问信
2015/11/30 职场文书
导游词之太原天龙山
2020/01/02 职场文书