javascript获取标签子节点并进行相应设置
2017-09-04 11:32
507 查看
由于经常会遇到对同一个类型的标签的子标签进行相应的处理,例如下图所示情况。
可以使用以下方法,让每一个li标签添加onclick事件,并且将这个标签整体传递给onclick事件的函数。
//获取子节点数组
var aChild =Obj.childNodes;
for(var i = 0,len = aChild.length; i < len; i++ ){
//判断子节点名称,注意大写。
if(aChild[i].nodeName == 'UL'){
//获取子节点id
var ul = document.getElementById(aChild[i].id);
}
上面菜单的实现办法如下:
<html>
<head>
<script>
function showTree(Obj){
//获取子节点数组
var aChild =Obj.childNodes;
for(var i = 0,len = aChild.length; i < len; i++ ){
//判断子节点名称,注意大写。
if(aChild[i].nodeName == 'UL'){
//获取子节点id
var ul = document.getElementById(aChild[i].id);
if(ul.style.display=="none"){
ul.style.display="block";
}
else {
ul.style.display="none";
}
}
}
}
</script>
</head>
<body>
<ul>
<li onclick="showTree(this)">menu1
<ul id="ul1" style="display:none" >
<li>item1</li>
<li>item2</li>
</ul>
</li>
<li onclick="showTree(this)">menu2
<ul id="ul2" style="display:none" >
<li>item1</li>
<li>item2</li>
</ul>
</li>
<li onclick="showTree(this)">menu3
<ul id="ul3" style="display:none" >
<li>item1</li>
<li>item2</li>
</ul>
</li>
</ul>
</body>
</html>
可以使用以下方法,让每一个li标签添加onclick事件,并且将这个标签整体传递给onclick事件的函数。
//获取子节点数组
var aChild =Obj.childNodes;
for(var i = 0,len = aChild.length; i < len; i++ ){
//判断子节点名称,注意大写。
if(aChild[i].nodeName == 'UL'){
//获取子节点id
var ul = document.getElementById(aChild[i].id);
}
上面菜单的实现办法如下:
<html>
<head>
<script>
function showTree(Obj){
//获取子节点数组
var aChild =Obj.childNodes;
for(var i = 0,len = aChild.length; i < len; i++ ){
//判断子节点名称,注意大写。
if(aChild[i].nodeName == 'UL'){
//获取子节点id
var ul = document.getElementById(aChild[i].id);
if(ul.style.display=="none"){
ul.style.display="block";
}
else {
ul.style.display="none";
}
}
}
}
</script>
</head>
<body>
<ul>
<li onclick="showTree(this)">menu1
<ul id="ul1" style="display:none" >
<li>item1</li>
<li>item2</li>
</ul>
</li>
<li onclick="showTree(this)">menu2
<ul id="ul2" style="display:none" >
<li>item1</li>
<li>item2</li>
</ul>
</li>
<li onclick="showTree(this)">menu3
<ul id="ul3" style="display:none" >
<li>item1</li>
<li>item2</li>
</ul>
</li>
</ul>
</body>
</html>
相关文章推荐
- php版getElementsByTagName , php版根据标签名获取 标签节点列表.模拟javascript的getElementsByTagName函数
- JavaScript获取某个元素节点的所有子元素节点标签
- web前端,javascript元素及属性进行获取,设置,添加,删除
- <a href="onclick="javascript:goSearch(this)" class="click" name="Java">Java</a>为什么a标签的父节点获取不到
- JavaScript DOM概述(获取节点的方法/节点的访问关系/节点创建添加删除复制/属性获取设置删除)
- JavaScript 获取、设置标签属性值 http://ajian759447583.iteye.com/blog/1540129
- Javascript 获取某个a标签的href并进行分解
- JavaScript中获取节点——获取标签(元素)节点
- JavaScript中获取XML数据流中数据节点的方法
- JavaScript DOM中获取元素节点的父节点和父节点名
- js使用html()或text()方法获取设置p标签的显示的值
- JavaScript---BOM模型之window对象,DOM模型的节点获取
- JavaScript获取HTML DOM节点元素的方法的总结
- aceAdmin fuelux tree 从后台获取数据,并设置节点ID等属性
- JavaScript 获取/设置光标位置,兼容Input&&TextArea
- Javascript获取和设置FCKeditor内容:
- 使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错。字符串的长度超过了为 maxJsonLength 属性设置的值
- JavaScript获取并更改input标签name属性的方法
- ASP.NET MVC 标签绑定传值及后台获取并进行修改操作
- javascript设置和获取cookie的方法实例详解