JS实现动态添加DOM节点和事件的方法示例


Posted in Javascript onApril 28, 2017

本文实例讲述了JS实现动态添加DOM节点和事件的方法。分享给大家供大家参考,具体如下:

运行效果图如下:

JS实现动态添加DOM节点和事件的方法示例

完整实例代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Js(DOM)动态添加节点和事件</title>
<script type="text/javascript">
function addEl(){
  //找到要添加节点的父节点(table)
  var tb = document.getElementById("tb");
  //创建tbody节点,表格中必须有tbody才能添加,直接添加tr不成功
  var tbody = document.createElement("tbody");
  //创建tr节点
  var tr = document.createElement("tr");
  //创建td节点
  var td = document.createElement("td");
  //添加一个文本框节点,设置id和type属性
  var newTp = document.createElement("input");
  newTp.id = "text1";
  newTp.type = "text";
  //添加一个按钮
  var newEl = document.createElement("input");
  newEl.type = 'button';
  newEl.value = "button";
  newEl.name = "button1";
  //添加onclick事件,和事件执行的函数
  newEl.onclick = function dofun(){
  document.getElementById("txt").value += newTp.value;
  }
  //把2个节点添加到td当中
  td.appendChild(newTp)
  td.appendChild(newEl);
  //把td添加到tr中
  tr.appendChild(td);
  //把tr添加到td中
  tbody.appendChild(tr);
  //把td添加到table中
  tb.appendChild(tbody);
}
</script>
</script>
</head>
<body>
<table id="tb">
  <tr>
  <td>
   添加节点的地方
  </td>
  </tr>
</table>
<table>
  <tr>
  <td>
   <input type="button" value="添加节点" onclick="addEl()" />
  </td>
  <td>
   <input type="text" id="txt"/>
  </td>
  </tr>
</table>
</body>
</html>

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

Javascript 相关文章推荐
javascript下给元素添加事件的方法与代码
Aug 13 Javascript
JavaScript学习笔记记录我的旅程
May 23 Javascript
javascript实现保留两位小数的多种方法
Dec 18 Javascript
bootstrap网页框架的使用方法
May 10 Javascript
简单解析JavaScript中的__proto__属性
May 10 Javascript
javascript回到顶部特效
Jul 30 Javascript
详解javascript事件绑定使用方法
Oct 20 Javascript
微信小程序开发之麦克风动画 帧动画 放大 淡出
Apr 18 Javascript
vue-cli3.0 脚手架搭建项目的过程详解
Oct 19 Javascript
vue 使用v-for进行循环的实例代码详解
Feb 19 Javascript
Vue vm.$attrs使用场景详解
Mar 08 Javascript
解决Nuxt使用axios跨域问题
Jul 06 Javascript
jQuery自定义元素右键点击事件(实现案例)
Apr 28 #jQuery
详解angularJs模块ui-router之状态嵌套和视图嵌套
Apr 28 #Javascript
vue基于Vue2.0和高德地图的地图组件实例
Apr 28 #Javascript
d3.js实现立体柱图的方法详解
Apr 28 #Javascript
JS基于正则表达式的替换操作(replace)用法示例
Apr 28 #Javascript
vue调用高德地图实例代码
Apr 28 #Javascript
vue省市区三联动下拉选择组件的实现
Apr 28 #Javascript
You might like
调整PHP的性能
2013/10/30 PHP
php提示Warning:mysql_fetch_array() expects的解决方法
2014/12/16 PHP
PHP排序算法类实例
2015/06/17 PHP
Mac系统完美安装PHP7详细教程
2017/06/06 PHP
PHP实现的登录页面信息提示功能示例
2017/07/24 PHP
php-fpm重启导致的程序执行中断问题详解
2019/04/29 PHP
浅析PHP7 的垃圾回收机制
2019/09/06 PHP
一个刚完成的layout(拖动流畅,不受iframe影响)
2007/08/17 Javascript
远离JS灾难css灾难之 js私有函数和css选择器作为容器
2011/12/11 Javascript
js模仿jquery的写法示例代码
2013/06/16 Javascript
JS画5角星方法介绍
2013/09/17 Javascript
jquery实现个人中心导航菜单效果和美观都非常不错
2014/09/02 Javascript
JS实现双击屏幕滚动效果代码
2015/10/28 Javascript
js过滤HTML标签完整实例
2015/11/26 Javascript
JS折半插入排序算法实例
2015/12/02 Javascript
jQuery实现的网格线绘制方法
2016/06/20 Javascript
js每隔两秒输出数组中的一项(实例)
2017/05/28 Javascript
js实现城市级联菜单的2种方法
2017/06/23 Javascript
Java设计中的Builder模式的介绍
2018/03/22 Javascript
layui中select,radio设置不生效的解决方法
2019/09/05 Javascript
[04:30]显微镜下的DOTA2第五期——拉比克
2013/09/26 DOTA
Python中datetime常用时间处理方法
2015/06/15 Python
python读取excel表格生成erlang数据
2017/08/26 Python
PYTHON基础-时间日期处理小结
2018/05/05 Python
利用PyCharm Profile分析异步爬虫效率详解
2019/05/08 Python
python 视频逐帧保存为图片的完整实例
2019/12/10 Python
用python批量下载apk
2020/12/29 Python
贝斯特韦斯特酒店集团官网:Best Western
2019/01/03 全球购物
自我鉴定书范文
2013/10/02 职场文书
写给女生的道歉信
2014/01/14 职场文书
文明和谐家庭事迹材料
2014/05/18 职场文书
公司慰问信范文
2015/03/23 职场文书
党风廉政建设心得体会(2016最新版)
2016/01/22 职场文书
坚持不是死撑,更重要的是心态
2019/08/19 职场文书
创业计划书之淘宝网店
2019/10/08 职场文书
Python面向对象之内置函数相关知识总结
2021/06/24 Python