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 相关文章推荐
仿jQuery的siblings效果的js代码
Aug 09 Javascript
js仿苹果iwatch外观的计时器代码分享
Aug 26 Javascript
利用jQuery中的ajax分页实现代码
Feb 25 Javascript
浅谈JS验证表单文本域输入空格的问题
Feb 14 Javascript
vue-loader教程介绍
Jun 14 Javascript
解决React Native端口号修改的方法
Jul 28 Javascript
JavaScript数据类型的存储方法详解
Aug 25 Javascript
使用Angular CLI生成路由的方法
Mar 24 Javascript
Vue指令v-for遍历输出JavaScript数组及json对象的常见方式小结
Feb 11 Javascript
vue 使用鼠标滚动加载数据的例子
Oct 31 Javascript
vue接通后端api以及部署到服务器操作
Aug 13 Javascript
JavaScript 中for/of,for/in 的详细介绍
Nov 17 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
星际争霸兵种名称对照表
2020/03/04 星际争霸
php htmlentities和htmlspecialchars 的区别
2008/08/18 PHP
php 代码优化的42条建议 推荐
2009/09/25 PHP
PHP文件操作之获取目录下文件与计算相对路径的方法
2016/01/08 PHP
php实现的rc4加密解密类定义与用法示例
2018/08/16 PHP
确保Laravel网站不会被嵌入到其他站点中的方法
2019/10/18 PHP
javascript KeyDown、KeyPress和KeyUp事件的区别与联系
2009/12/03 Javascript
Jquery插件写法笔记整理
2012/09/06 Javascript
document.documentElement的一些使用技巧
2013/04/18 Javascript
利用cookie记住背景颜色示例代码
2013/11/04 Javascript
js+csss实现的一个带复选框的下拉框
2014/09/29 Javascript
jQuery简单实现列表隐藏和显示效果示例
2016/09/12 Javascript
微信小程序(六):列表上拉加载下拉刷新示例
2017/01/13 Javascript
用node和express连接mysql实现登录注册的实现代码
2017/07/05 Javascript
Bootstrap提示框效果的实例代码
2017/07/12 Javascript
javascript实现文字无缝滚动效果
2017/08/26 Javascript
关于vue的语法规则检测报错问题的解决
2018/05/21 Javascript
vue使用Element组件时v-for循环里的表单项验证方法
2018/06/28 Javascript
微信小程序 Animation实现图片旋转动画示例
2018/08/22 Javascript
Nuxt项目支持eslint+pritter+typescript的实现
2019/05/20 Javascript
js实现AI五子棋人机大战
2020/05/28 Javascript
python中PIL安装简单教程
2016/04/21 Python
浅谈python迭代器
2017/11/08 Python
Python通过属性手段实现只允许调用一次的示例讲解
2018/04/21 Python
Python实现的查询mysql数据库并通过邮件发送信息功能
2018/05/17 Python
Python实现串口通信(pyserial)过程解析
2019/09/25 Python
python实现图像拼接功能
2020/03/23 Python
python的pip有什么用
2020/06/17 Python
如何给HTML标签中的文本设置修饰线
2019/11/18 HTML / CSS
美国运动鞋和服装网上商店:YCMC
2018/09/15 全球购物
台湾东南旅游社网站:东南旅游
2019/02/11 全球购物
Spartoo美国:欧洲排名第一的在线时装零售商
2019/12/12 全球购物
三年级班级文化建设方案
2014/05/04 职场文书
高二学年自我鉴定范文(2篇)
2014/09/26 职场文书
广告策划的实习心得体会总结!
2019/07/22 职场文书
Java图书管理系统,课程设计必用(源码+文档)
2021/06/30 Java/Android