JavaScript实现动态添加Form表单元素的方法示例


Posted in Javascript onAugust 14, 2017

本文实例讲述了JavaScript实现动态添加Form表单元素的方法。分享给大家供大家参考,具体如下:

之前写过类似的文章(如:javascript实现的动态添加表单元素input,button等),现在看来比较初级,弄一个高级的简单的

情景: 后台要上传游戏截图,截图数量不确定,因此使用动态添加input节点的方法去实现这个效果

主要用到的函数有:

document.getElementById();

objNode.parentNode;

objNode.cloneNode();

objNode.removeAtrribute();

objNode.innerHTML();

objNode.appendChild();

html:

<div class="well well-sm">
  <div class="form-group">
    <label class="form-label">游戏截图:</label>
    <input type="file" name="jietu[]" class="form-input">
    <span class="form-tip" onclick="add_jietu()"><font color="#428bca">点击添加游戏截图</font></span>
  </div>
  <div class="form-group" id="add_jietu">
    <label class="form-label">游戏截图:</label>
    <input type="file" name="jietu[]" class="form-input">
  </div>
</div>

javascript:

<script type="text/javascript">
function add_jietu()
{
  var add_jietu = document.getElementById('add_jietu');
  var nodeFather = add_jietu.parentNode;
  var node_clone = add_jietu.cloneNode();
  content = add_jietu.innerHTML;
  node_clone.removeAttribute('id');
  node_clone.innerHTML = content;
  nodeFather.appendChild(node_clone);
}
</script>

注意:

1. js第6行使用的是"克隆节点"函数,克隆后的节点里边并没有html,需要第9行的代码去填充内容

2. 使用克隆功能,因为该方法生成的变量类型是"节点类型", 才可以用到appendChild()函数里做参数

3. 节点的 nextSibling 和 lastChild 属性得到的变量是 Text类型(在chrome的调试窗口中看到的)

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
IE之动态添加DOM节点触发window.resize事件
Jul 27 Javascript
js arguments对象应用介绍
Nov 28 Javascript
jQuery的基本概念与高级编程
May 14 Javascript
jQuery中bind(),live(),delegate(),on()绑定事件方法实例详解
Jan 19 Javascript
jQuery+CSS3实现仿花瓣网固定顶部位置带悬浮效果的导航菜单
Sep 21 Javascript
jQuery动态生成Bootstrap表格
Nov 01 Javascript
vue中如何引入jQuery和Bootstrap
Apr 10 jQuery
使用JavaScript根据图片获取条形码的方法
Jul 04 Javascript
angularjs实现的购物金额计算工具示例
May 08 Javascript
JavaScript中AOP的实现与应用
May 06 Javascript
js中apply和call的理解与使用方法
Nov 27 Javascript
JS异步宏队列微队列原理详解
Sep 09 Javascript
JavaScript实现的搜索及高亮显示功能示例
Aug 14 #Javascript
带你了解session和cookie作用原理区别和用法
Aug 14 #Javascript
react.js使用webpack搭配环境的入门教程
Aug 14 #Javascript
JS原生数据双向绑定实现代码
Aug 14 #Javascript
jQuery 中msgTips 顶部弹窗效果实现代码
Aug 14 #jQuery
关于在mongoose中填充外键的方法详解
Aug 14 #Javascript
JavaScript变量类型以及变量作用域详解
Aug 14 #Javascript
You might like
WordPress开发中的get_post_custom()函数使用解析
2016/01/04 PHP
php使用parse_str实现查询字符串解析到变量中的方法
2017/02/17 PHP
LAMP环境使用Composer安装Laravel的方法
2017/03/25 PHP
PHP快速排序算法实现的原理及代码详解
2019/04/03 PHP
Laravel手动返回错误码示例
2019/10/22 PHP
开发跨浏览器javascript常见注意事项
2009/01/01 Javascript
js 绑定带参数的事件以及手动触发事件
2010/04/27 Javascript
JavaScript学习历程和心得小结
2010/08/16 Javascript
cnblogs中在闪存中屏蔽某人的实现代码
2010/11/14 Javascript
jquery中获取select选中值的代码
2011/06/27 Javascript
node.js正则表达式获取网页中所有链接的代码实例
2014/06/03 Javascript
jquery判断浏览器后退时候弹出消息的方法
2014/08/11 Javascript
javascript中获取元素标签中间的内容的实现方法
2016/10/08 Javascript
Bootstrap整体框架之JavaScript插件架构
2016/12/15 Javascript
vue radio单选框,获取当前项(每一项)的value值操作
2020/09/10 Javascript
Javascript数组及类数组相关原理详解
2020/10/29 Javascript
用pywin32实现windows模拟鼠标及键盘动作
2014/04/22 Python
使用grappelli为django admin后台添加模板
2014/11/18 Python
解决Python一行输出不显示的问题
2018/12/03 Python
python检测IP地址变化并触发事件
2018/12/26 Python
Django 在iframe里跳转顶层url的例子
2019/08/21 Python
Django文件上传与下载(FileFlid)
2019/10/06 Python
python创建学生管理系统
2019/11/22 Python
Python pysnmp使用方法及代码实例
2020/08/24 Python
Pycharm-community-2020.2.3 社区版安装教程图文详解
2020/12/08 Python
经济实惠的名牌太阳镜和眼镜:Privé Revaux
2021/02/07 全球购物
不开辟用于交换数据的临时空间,如何完成字符串的逆序
2012/12/02 面试题
出纳岗位职责
2013/11/09 职场文书
高中毕业生自我鉴定例文
2013/12/29 职场文书
事假请假条范文
2014/04/11 职场文书
《悯农》教学反思
2014/04/28 职场文书
日语系毕业求职信
2014/07/27 职场文书
学校领导班子四风对照检查材料
2014/09/27 职场文书
Python的property属性详细讲解
2022/04/11 Python
SpringBoot详解整合Redis缓存方法
2022/07/15 Java/Android
VUE递归树形实现多级列表
2022/07/15 Vue.js