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

发布时间 - 2026-01-11 00:52:58    点击率:

本文实例讲述了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操作DOM技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

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


# JS  # 动态  # 添加  # DOM节点  # 事件  # JavaScript中DOM操作常用事件总结  # JavaScript DOMContentLoaded事件案例详解  # JavaScript WebAPI、DOM、事件和操作元素实例详解  # 详解用js代码触发dom事件的实现方案  # JS前端知识点总结之页面加载事件  # 数组操作  # DOM节点操作  # 循环和分支  # JS实现同一DOM元素上onClick事件与onDblClick事件并存的解决方法  # js中DOM事件绑定分析  # JS对象与JSON互转换、New Function()、 forEach()、DOM事件流等js开发  # js学习总结之dom2级事件基础知识详解  # JavaScript DOM操作与事件处理方法  # 相关内容  # 遍历  # 感兴趣  # 数据结构  # 给大家  # 更多关于  # 所述  # 不成功  # 程序设计  # 文本框  # 讲述了  # TR  # org  # transitional  # http  # EN  # www  # head  # xhtml  # equiv 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Python并发异常传播_错误处理解析【教程】  如何用ChatGPT准备面试 模拟面试问答与职场话术练习教程  如何将凡科建站内容保存为本地文件?  如何选择PHP开源工具快速搭建网站?  Laravel如何设置定时任务(Cron Job)_Laravel调度器与任务计划配置  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  公司网站制作价格怎么算,公司办个官网需要多少钱?  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  详解Android——蓝牙技术 带你实现终端间数据传输  jQuery validate插件功能与用法详解  个人摄影网站制作流程,摄影爱好者都去什么网站?  ChatGPT 4.0官网入口地址 ChatGPT在线体验官网  Laravel如何实现模型的全局作用域?(Global Scope示例)  Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】  Laravel distinct去重查询_Laravel Eloquent去重方法  英语简历制作免费网站推荐,如何将简历翻译成英文?  Laravel如何使用Telescope进行调试?(安装和使用教程)  Laravel如何使用查询构建器?(Query Builder高级用法)  如何在服务器上三步完成建站并提升流量?  原生JS获取元素集合的子元素宽度实例  javascript中的数组方法有哪些_如何利用数组方法简化数据处理  Windows10电脑怎么设置虚拟光驱_Win10右键装载ISO镜像文件  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  Laravel如何发送系统通知_Laravel Notifications实现多渠道消息通知  活动邀请函制作网站有哪些,活动邀请函文案?  音响网站制作视频教程,隆霸音响官方网站?  Laravel如何使用Eloquent ORM进行数据库操作?(CRUD示例)  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)  公司门户网站制作流程,华为官网怎么做?  php json中文编码为null的解决办法  html5如何实现懒加载图片_ intersectionobserver api用法【教程】  如何打造高效商业网站?建站目的决定转化率  laravel怎么为应用开启和关闭维护模式_laravel应用维护模式开启与关闭方法  清除minerd进程的简单方法  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  详解Nginx + Tomcat 反向代理 负载均衡 集群 部署指南  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  用v-html解决Vue.js渲染中html标签不被解析的问题  linux top下的 minerd 木马清除方法  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势  什么是javascript作用域_全局和局部作用域有什么区别?  Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】  ,在苏州找工作,上哪个网站比较好?  Laravel如何使用Spatie Media Library_Laravel图片上传管理与缩略图生成【步骤】  宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法  什么是JavaScript解构赋值_解构赋值有哪些实用技巧  如何在阿里云香港服务器快速搭建网站?