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 相关文章推荐
Js的MessageBox
Dec 03 Javascript
jquery 操作css样式、位置、尺寸方法汇总
Nov 28 Javascript
JavaScript中调用函数的4种方式代码实例
Jul 08 Javascript
JavaScript中this详解
Sep 01 Javascript
JavaScript制作淘宝星级评分效果的思路
Jun 23 Javascript
又一枚精彩的弹幕效果jQuery实现
Jul 25 Javascript
Avalonjs 实现简单购物车功能(实例代码)
Feb 07 Javascript
Javascript 严格模式use strict详解
Sep 16 Javascript
Vue中的transition封装组件的实现方法
Aug 13 Javascript
使用 Vue 实现一个虚拟列表的方法
Aug 20 Javascript
微信小程序实现二维码签到考勤系统
Jan 16 Javascript
卸载vue2.0并升级vue_cli3.0的实例讲解
Feb 16 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注入实例
2006/10/09 PHP
php 多关键字 高亮显示实现代码
2012/04/23 PHP
PHP缓存集成库phpFastCache用法
2014/12/15 PHP
thinkPHP5.0框架配置格式、加载解析与读取方法
2017/03/17 PHP
Laravel框架实现简单的学生信息管理平台案例
2019/05/07 PHP
基于jQuery的消息提示插件之旅 DivAlert(三)
2010/04/01 Javascript
jQuery的each终止或跳过示例代码
2013/12/12 Javascript
dedecms页面如何获取会员状态的实例代码
2016/03/15 Javascript
全面理解JavaScript中的闭包
2016/05/12 Javascript
深入理解React中es6创建组件this的方法
2016/08/29 Javascript
详解Javascript函数声明与递归调用
2016/10/22 Javascript
layui框架table 数据表格的方法级渲染详解
2018/08/19 Javascript
Angular6 用户自定义标签开发的实现方法
2019/01/08 Javascript
详解微信小程序-扫一扫 wx.scanCode() 扫码大变身
2019/04/30 Javascript
微信小程序实现带参数的分享功能(两种方法)
2019/05/17 Javascript
Vue中常用rules校验规则(实例代码)
2019/11/14 Javascript
VUE使用 wx-open-launch-app 组件开发微信打开APP功能
2020/08/11 Javascript
JSON stringify方法原理及实例解析
2020/10/23 Javascript
vue实现表格合并功能
2020/12/01 Vue.js
[01:59]DOTA2首部纪录片《Free to play》预告片
2014/03/12 DOTA
[47:50]Secret vs VP 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
python调用新浪微博API项目实践
2014/07/28 Python
Python实现八大排序算法
2016/08/13 Python
浅析python中SQLAlchemy排序的一个坑
2017/02/24 Python
Python可以实现栈的结构吗
2020/05/27 Python
Python爬虫小例子——爬取51job发布的工作职位
2020/07/10 Python
艺术设计专业个人求职信范文
2013/12/11 职场文书
平面设计专业大学生职业规划书
2014/03/12 职场文书
大学生学习新党章思想汇报
2014/10/25 职场文书
给老婆的道歉信
2015/01/20 职场文书
幼儿园父亲节活动总结
2015/02/12 职场文书
工作推荐信模板
2015/03/25 职场文书
2015企业年终工作总结范文
2015/05/27 职场文书
Java多条件判断场景中规则执行器的设计
2021/06/26 Java/Android
Java数据结构之堆(优先队列)
2022/05/20 Java/Android
Li list-style-image 图片垂直居中实现方法
2023/05/21 HTML / CSS