浅述节点的创建及常见功能的实现

发布时间 - 2026-01-10 21:51:10    点击率:

新创建一个元素节点,并把该节点添加为文档中指定节点的子节点

1,新创建一个元素节点,返回值为指向元素节点的引用

var liNode =document.creatElement("li");
var cityNode=document.getElementById("city");

新添加newChild子节点,该子节点将作为elementNode

cityNode.appendChild(liNode);

2,创建一个文本节点 creatTextNode

var xmText=document.creatTextNode("厦门");

//需求: 点击 submit 按钮时, 检查是否选择 type, 若没有选择给出提示: "请选择类型"; 
// 检查文本框中是否有输入(可以去除前后空格), 若没有输入,则给出提示: "请输入内容";
//若检查都通过, 则在相应的 ul 节点中添加对应的 li 节点 
//需求2: 使包括新增的 li 都能响应 onclick 事件: 弹出 li 的文本值. 
window.onload = function(){
function showContent(liNode){
alert("^_^#" + liNode.firstChild.nodeValue);
}
var liNodes = document.getElementsByTagName("li");
for(var i = 0; i < liNodes.length; i++){
liNodes[i].onclick = function(){
showContent(this);
}
}
//1. 获取 #submit 对应的按钮 submitBtn
var submit = document.getElementById("submit");
//2. 为 submitBtn 添加 onclick 响应函数
submit.onclick = function(){
//4. 检查是否选择 type, 若没有选择给出提示: "请选择类型"
//4.1 选择所有的 name="type" 的节点 types
var types = document.getElementsByName("type");
//4.2 遍历 types, 检查其是否有一个 type 的 checked 属性存在, 就可说明
//有一个 type 被选中了: 通过 if(元素节点.属性名) 来判断某一个元素节点是否有
//该属性.
var typeVal = null;
for(var i = 0; i < types.length; i++){
if(types[i].checked){
typeVal = types[i].value;
break;
}
}
//4.3 若没有任何一个 type 被选中, 则弹出: "请选择类型". 响应方法结束: 
//return false
if(typeVal == null){
alert("请选择类型");
return false;
}
//5. 获取 name="name" 的文本值: 通过 value 属性: nameVal 
var nameEle = document.getElementsByName("name")[0];
var nameVal = nameEle.value;
//6. 去除 nameVal 的前后空格. 
var reg = /^\s*|\s*$/g;
nameVal = nameVal.replace(reg, "");
//使 name 的文本框也去除前后空格. 
nameEle.value = nameVal;
//6. 把 nameVal 和 "" 进行比较, 若是 "" 说明只出入了空格, 弹出 "请输入内容"
//方法结束: return false
if(nameVal == ""){
alert("请输入内容");
return false;
}
//7. 创建 li 节点
var liNode = document.createElement("li");
//8. 利用 nameVal 创建文本节点
var content = document.createTextNode(nameVal);
//9. 把 8 加为 7 的子节点
liNode.appendChild(content);
//11. 为新创建的 li 添加 onclick 响应函数
liNode.onclick = function(){
showContent(this);
}
//10. 把 7 加为选择的 type 对应的 ul 的子节点
document.getElementById(typeVal)
.appendChild(liNode);
//3. 在 onclick 响应函数的结尾处添加 return false, 就可以取消提交按钮的
//默认行为. 
return false;
}
}
</script>
</head>
<body>
<p>你喜欢哪个城市?</p>
<ul id="city">
<li id="bj">北京</li>
<li>上海</li>
<li>东京</li>
<li>首尔</li>
</ul>
<br><br>
<p>你喜欢哪款单机游戏?</p>
<ul id="game">
<li id="rl">红警</li>
<li>实况</li>
<li>极品飞车</li>
<li>魔兽</li>
</ul>
<br><br>
<form action="dom-7.html" name="myform">
<input type="radio" name="type" value="city">城市
<input type="radio" name="type" value="game">游戏
name: <input type="text" name="name"/>
<input type="submit" value="Submit" id="submit"/>
</form>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# 节点  # 创建  # jQuery与JavaScript节点创建方法的对比  # jstree创建无限分级树的方法【基于ajax动态创建子节点】  # jQuery动态创建元素以及追加节点的实现方法  # jQuery简单创建节点的方法  # JavaScript中对DOM节点的访问、创建、修改、删除  # JQuery创建DOM节点的方法  # 删除javascript所创建子节点的方法  # js创建元素(节点)示例  # xml创建节点(根节点、子节点)  # js和jquery对dom节点的操作(创建/追加)  # jquery创建一个新的节点对象(自定义结构/内容)的好方法  # 创建二叉树 二叉树如何删除节点操作教程  # 初学js 新节点的创建 删除 的步骤  # 请选择  # 请输入  # 弹出  # 创建一个  # 你喜欢  # 加为  # 有一个  # 东京  # 都能  # 遍历  # 厦门  # 就可  # 任何一个  # 则在  # 上海  # 北京  # 值为  # 框中  # 单机游戏  # 就可以 


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


相关推荐: Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门  网站制作壁纸教程视频,电脑壁纸网站?  如何快速配置高效服务器建站软件?  如何在橙子建站上传落地页?操作指南详解  html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  Laravel中的Facade(门面)到底是什么原理  如何实现建站之星域名转发设置?  网站优化排名时,需要考虑哪些问题呢?  Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  JavaScript如何实现错误处理_try...catch如何捕获异常?  Python高阶函数应用_函数作为参数说明【指导】  Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布  Laravel如何与Docker(Sail)协同开发?(环境搭建教程)  北京网页设计制作网站有哪些,继续教育自动播放怎么设置?  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】  简历没回改:利用AI润色让你的文字更专业  HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】  Laravel如何实现用户注册和登录?(Auth脚手架指南)  html5如何实现懒加载图片_ intersectionobserver api用法【教程】  实例解析angularjs的filter过滤器  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  如何用y主机助手快速搭建网站?  java获取注册ip实例  魔毅自助建站系统:模板定制与SEO优化一键生成指南  edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】  详解jQuery中基本的动画方法  Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用  晋江文学城电脑版官网 晋江文学城网页版直接进入  JavaScript模板引擎Template.js使用详解  Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南  网站建设整体流程解析,建站其实很容易!  清除minerd进程的简单方法  Android okhttputils现在进度显示实例代码  香港服务器选型指南:免备案配置与高效建站方案解析  JavaScript Ajax实现异步通信  简历在线制作网站免费版,如何创建个人简历?  Java解压缩zip - 解压缩多个文件或文件夹实例  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  Laravel怎么实现模型属性的自动加密  Laravel如何使用withoutEvents方法临时禁用模型事件  Linux系统命令中tree命令详解  Laravel集合Collection怎么用_Laravel集合常用函数详解  移动端脚本框架Hammer.js  Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程  Win11怎么更改系统语言为中文_Windows11安装语言包并设为显示语言  中山网站制作网页,中山新生登记系统登记流程?  linux top下的 minerd 木马清除方法