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

发布时间 - 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如何配置和使用缓存?(Redis代码示例)  教你用AI将一段旋律扩展成一首完整的曲子  潮流网站制作头像软件下载,适合母子的网名有哪些?  Laravel Livewire是什么_使用Laravel Livewire构建动态前端界面  利用JavaScript实现拖拽改变元素大小  Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程  javascript中对象的定义、使用以及对象和原型链操作小结  如何注册花生壳免费域名并搭建个人网站?  Android自定义listview布局实现上拉加载下拉刷新功能  敲碗10年!Mac系列传将迎来「触控与联网」双革新  微信推文制作网站有哪些,怎么做微信推文,急?  Laravel怎么使用artisan命令缓存配置和视图  如何快速搭建FTP站点实现文件共享?  微信小程序 配置文件详细介绍  Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用  Laravel如何设置定时任务(Cron Job)_Laravel调度器与任务计划配置  Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用  Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧  ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】  Laravel如何使用查询构建器?(Query Builder高级用法)  Laravel如何优化应用性能?(缓存和优化命令)  Laravel如何使用Blade模板引擎?(完整语法和示例)  微信公众帐号开发教程之图文消息全攻略  Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明  如何快速搭建虚拟主机网站?新手必看指南  Laravel用户密码怎么加密_Laravel Hash门面使用教程  猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?  悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音  南京网站制作费用,南京远驱官方网站?  iOS UIView常见属性方法小结  laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程  悟空识字怎么关闭自动续费_悟空识字取消会员自动扣费步骤  C语言设计一个闪闪的圣诞树  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  千库网官网入口推荐 千库网设计创意平台入口  详解vue.js组件化开发实践  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  高防服务器租用指南:配置选择与快速部署攻略  js实现获取鼠标当前的位置  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  Midjourney怎样加参数调细节_Midjourney参数调整技巧【指南】  如何用免费手机建站系统零基础打造专业网站?  laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法  EditPlus中的正则表达式 实战(4)  韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐  非常酷的网站设计制作软件,酷培ai教育官方网站?  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  Java类加载基本过程详细介绍