精华内容
下载资源
问答
  • c# treeview 获取子节点

    2019-10-28 10:16:34
    这个是我自己写的 可能有点小瑕疵 如果我发现了我会解决并且去更新这个资源 如果哪个大佬发现后 提出解决办法 我也将会更新
  • 主要介绍了Java list如何根据id获取子节点,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • 主要介绍了JS获取子节点、父节点和兄弟节点的方法,结合实例形式总结分析了JavaScript针对子节点、父节点和兄弟节点获取相关操作技巧与使用注意事项,需要的朋友可以参考下
  • 本节主要介绍了jQuery如何获取节点和子节点文本,下面有个示例,大家可以参考下
  • 主要介绍了ztree获取当前选中节点子节点id集合的方法,实例分析了ztree的方法transformToArray使用技巧,需要的朋友可以参考下
  • js与jquery获取子节点、父节点、兄弟节点的方法     在写代码时,是不是会遇到获取子节点、父节点等需要,但有的总是弄混淆不是很清晰,所以针对这些问题,总结了jquery与js获取节点的方法 js...

    js与jquery获取子节点、父节点、兄弟节点的方法

        在写代码时,时不时会遇到获取子节点、父节点等需要,但有的时候总是弄混淆不是很清晰,所以针对这些问题,总结了jquery与js获取节点的方法

    js方法

    <div id="div">
        <p id = "one">我是爷爷</p>
        <span id="two">我是伯伯</span>
        <div id="three">
            <span id="threeOne">
                <span id="threeTwo">孙子1</span>
                <span id="threeFour">孙子2</span>
            </span>
        </div>
    </div>
    
    一、js获取父节点

    1.parentElement()方法获取父节点,其是IE标准下的方法

    var three=document.getElementById('three');
    var parent=three.parentElement;	//id='div'
    

    2.parentNode获取,其是w3c标准下方法

    var three=document.getElementById('three');
    var parent=three.parentNode;//id='div'
    

    3.offsetParent获取
    该方法返回最近的祖先定位元素

    var three=document.getElementById('three');
    var parent=three.offsetParent;	//是body
    parent.style.background="red";
    
    二、js获取子节点

    1.通过getElementsByTagName()获取子节点的标签数组,进而获取子节点,

    var three=document.getElementById('threeOne');
    var span=three.getElementsByTagName('span');//span[0]》id='threeTwo'; 
    

    2.通过childNodes获取子节点,与children获取结果不同
    其返回的是子节点的集合,是一个数组包含换行和空格

     var three=document.getElementById('threeOne');
     var span=three.childNodes;
     console.log(span);
    

    在这里插入图片描述
    所以为了进一步获取子节点,需要对chiledNodes进行去除空格和换行处理

    for (var i=0;i<span.length;i++){
                   if (span[i].nodeName =='#text'&& !/\s/.test(span.nodeValue)){
                       three.removeChild(span[i]);
                   }
               }
     console.log(span);         
    

    在这里插入图片描述

    3.通过children获取,与childNodes获取结果不同
    其返回的是包含子节点的一个数组

      var three=document.getElementById('threeOne');
      var span=three.children;//span[0]》id='threeTwo';
    

    4.通过firstChild获取,在测试的时候发现,取得的值为空,发现其父级的children包含空格或换行,所以要对父级的children进行处理,方法同上

    var three=document.getElementById('threeOne');
     var span=three.childNodes;
     for (var i=0;i<span.length;i++){
             if (span[i].nodeName =='#text'&& !/\s/.test(span.nodeValue)){
               three.removeChild(span[i]);
                  }
               }
     console.log(three.firstChild)
    

    5.获取最后一个子节点
    其直接返回父级下的第一个子节点

    var three=document.getElementById('threeOne');
    console.log(three.firstElementChild);
     //<span id="threeTwo">孙子1</span>
    

    6.通过firstElementChild获取
    其直接返回父级下的第一个子节点

     var three=document.getElementById('threeOne');
    console.log(three.lastChild);
    lastChild同firstChild一样,也要进行处理
    console.log(three.lastElementChild); // <span id="threeFour">孙子2</span>
    
    三、js获取兄弟节点

    1.先获取父节点,在获取父节点下面的子节点

    var two=document.getElementById('two');
    var twoParent=two.parentNode;
    console.log(twoParent.children[0]);//id='one';
    

    2.通过previousElementSibling直接获取

    var two=document.getElementById('two');
    var twoPre=two.previousElementSibling;
    console.log(twoPre);//<p id="one">我是爷爷</p>
    

    3.通过previousSibling获取,它与previousElementSibling不同的是,其还包含换行和空格,这里就在进行细述。

    var two=document.getElementById('two');
    var twoPre=two.previousSibling;
    

    4.获取下个兄弟节点

    var two=document.getElementById('two');
    var twoPre=two.nextElementSibling;
    console.log(twoPre);//<p id="one">我是爷爷</p>
    var twoPre=two.nextSibling;//也需要对其进行处理
    

    jquery方法

    一、js获取父节点

    1.通过parent()方法获取
    该方法只会对上一级DOM树进行遍历

    var a= $('#threeFour').parent();//id="threeOne"
    

    2.通过parents()
    该方法会返回其所有的祖先元素

    var a= $('#threeFour').parent();// ```
    var a= $('#threeFour').parent();//#threeOne,#three,#div, body, html
    

    3.通过parentsUntil() 方法
    该方法返回当前元素到截止元素之间的所有祖先元素

     var a= $('#threeFour').parentsUntil('div');//#threeOne
    
    二、js获取父子节点

    1.通过children() 方法
    该方法返回被选元素的所有直接子元素,对下一级DOM树进行遍历

     var a= $('#threeOne').children();//#threeTwo,#threeFour
    

    2.通过find() 方法
    该方法会向下一级,找到该元素

      var a= $('#threeOne').find('#threeFour');//#threeFour
    
    三、js获取兄弟节点

    1.通过 siblings() 方法
    该方法返回元素的所有兄弟节点

    var a= $('#two').siblings();//#one,#three
    

    2.通过next() 方法
    该方法只返回一个元素

    var a= $('#two').next();//#three
    

    3.通过nextAll() 方法
    该方法返回所有跟随的兄弟元素

    var a= $('#one').nextAll();#two,#three
    

    4.通过nextUntil() 方法
    该方法返回元素到截止元素之间的兄弟元素

    var a= $('#one').nextUntil('#three');#two
    

    prev(), prevAll() & prevUntil() 方法只不过是取目标元素之前的兄弟节点,这里就不一一描述了

    展开全文
  • 如何获取要更新的这些元素呢?用JavaScript获取这些节点的方法有很多种,下面是总结的一些方法,感兴趣的朋友可以参考下哈
  • js 获取子节点的多种方式

    千次阅读 2018-06-26 15:58:45
    一、js获取子节点的方式1.通过获取dom方式直接获取子节点其中test的父标签id的值,div为标签的名字。getElementsByTagName是一个方法。返回的是一个数组。在访问的时候要按数组的形式访问。var a = document....

    一、js获取子节点的方式

    1.通过获取dom方式直接获取子节点

    其中test的父标签id的值,div为标签的名字。getElementsByTagName是一个方法。返回的是一个数组。在访问的时候要按数组的形式访问。

    var a = document.getElementById("test").getElementsByTagName("div");
    
    • 1
    • 2

    2.通过childNodes获取子节点

    使用childNodes获取子节点的时候,childNodes返回的是子节点的集合,是一个数组的格式。他会把换行和空格也当成是节点信息。

    var b =document.getElementById("test").childNodes;
    
    • 1
    • 2

    为了不显示不必须的换行的空格,我们如果要使用childNodes就必须进行必要的过滤。通过正则表达式式取掉不必要的信息。下面是过滤掉

    //去掉换行的空格
    for(var i=0; i<b.length;i++){
        if(b[i].nodeName == "#text" && !/\s/.test(b.nodeValue)){
            document.getElementById("test").removeChild(b[i]);
        }
    }
    //打印测试
    for(var i=0;i<b.length;i++){
        console.log(i+"---------")
        console.log(b[i]);
    }
    //补充 document.getElementById("test").childElementCount;  可以直接获取长度 同length
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    4.通过children来获取子节点

    利用children来获取子元素是最方便的,他也会返回出一个数组。对其获取子元素的访问只需按数组的访问形式即可。

    var getFirstChild = document.getElementById("test").children[0];
    
    • 1
    • 2

    5.获取第一个子节点

    firstChild来获取第一个子元素,但是在有些情况下我们打印的时候会显示undefined,这是什么情况呢??其实firstChild和childNodes是一样的,在浏览器解析的时候会把他当换行和空格一起解析,其实你获取的是第一个子节点,只是这个子节点是一个换行或者是一个空格而已。那么不要忘记和childNodes一样处理呀。

    var getFirstChild = document.getElementById("test").firstChild;
    
    • 1
    • 2

    6.firstElementChild获取第一个子节点

    使用firstElementChild来获取第一个子元素的时候,这就没有firstChild的那种情况了。会获取到父元素第一个子元素的节点 这样就能直接显示出来文本信息了。他并不会匹配换行和空格信息。

    var getFirstChild = document.getElementById("test").firstElementChild;
    
    • 1
    • 2

    7.获取最后一个子节点

    lastChild获取最后一个子节点的方式其实和firstChild是类似的。同样的lastElementChild和firstElementChild也是一样的。不再赘余。

     var getLastChildA = document.getElementById("test").lastChild;
     var getLastChildB = document.getElementById("test").lastElementChild;
    
    • 1
    • 2
    • 3

    二、js获取父节点的方式

    1.parentNode获取父节点

    获取的是当前元素的直接父元素。parentNode是w3c的标准。

    var p  = document.getElementById("test").parentNode;
    
    • 1
    • 2

    2.parentElement获取父节点

    parentElement和parentNode一样,只是parentElement是ie的标准。

    var p1 = document.getElementById("test").parentElement;
    
    • 1
    • 2

    3.offsetParent获取所有父节点

    一看offset我们就知道是偏移量 其实这个是于位置有关的上下级 ,直接能够获取到所有父亲节点, 这个对应的值是body下的所有节点信息。

    var p2 = document.getElementById("test").offsetParent;
    
    • 1
    • 2

    三、js获取兄弟节点的方式

    1.通过获取父亲节点再获取子节点来获取兄弟节点

    var brother1 = document.getElementById("test").parentNode.children[1];
    
    • 1
    • 2

    2.获取上一个兄弟节点

    在获取前一个兄弟节点的时候可以使用previousSibling和previousElementSibling。他们的区别是previousSibling会匹配字符,包括换行和空格,而不是节点。previousElementSibling则直接匹配节点。

    var brother2 = document.getElementById("test").previousElementSibling;
    var brother3 = document.getElementById("test").previousSibling;
    
    • 1
    • 2
    • 3

    3.获取下一个兄弟节点

    同previousSibling和previousElementSibling,nextSibling和nextElementSibling也是类似的。

    var brother4 = document.getElementById("test").nextElementSibling;
    var brother5 = document.getElementById("test").nextSibling;
    展开全文
  • js dom操作 获取子节点的三种方式

    千次阅读 2020-10-22 09:07:29
    获取子节点的三种方式 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript"> window.onload = function...
    1. 获取子节点的三种方式
    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title></title>
    		<script type="text/javascript">
    			window.onload = function(){
    				//查找#city下所有li节点
    				//方法1
    				var lis = document.getElementById("city").children;
    				console.log(lis.length)
    				//方法2
    				//对于 childNodes,需要使用nodetype 来判断 nodeType来判断是哪种类型的节点,只有当nodeType==1时才是元素节点,2是属性节点,3是文本节点
    				lis = document.getElementById("city").childNodes;
    				for (var i=0;i<lis.length;i++) {
    					if(lis[i].nodeType==1){
    						console.log(lis[i].innerHTML);
    					}
    				}
    				//方法3
    				lis = document.getElementById("city").getElementsByTagName("li");
    				console.log(lis.length)
    			};
    		</script>
    	</head>
    	<body>
    		<div id="total">
    			<p>
    					你喜欢哪个城市?
    			</p>
    			<ul id="city">
    					<li id="bj">北京</li>
    					<li>上海</li>
    					<li>东京</li>
    					<li>首尔</li>
    				</ul>	
    		</div>
    	</body>
    </html>
    
    
    展开全文
  • 在使用Cocos2d-lua+ccs进行开发的时候,获取ccs拼接的ui界面中的子节点的方法为getChildByName(),例如: parent:getChildByName("childName") 但是这个方法只能逐层获取,比如下面这个节点层级: node_main ...

    在使用 Cocos2d-lua + ccs 进行开发的时候,获取ccs拼接的ui界面中的子节点的方法为 getChildByName(),例如:

    parent:getChildByName("childName")

    但是这个方法只能逐层获取,比如下面这个节点层级:

    node_main
        node_top
            img_bg_top
        node_center
            img_bg_center
            txt_desc

    现在需要修改节点 txt_desc 的文本为"Hello fightsyj",使用 getChildByName() 方法:

    node_main:getChildByName("node_center"):getChildByName("txt_desc"):setString("Hello fightsyj")

    如果想直接一步到位使用:

    node_main:getChildByName("txt_desc"):setString("Hello fightsyj")

    是无法获取到节点 txt_desc 的,会报错!

     

    当然,想一步到位也是可以的!封装一个工具函数去递归遍历获取目标子节点:

    --[[ 
    递归遍历获取目标子节点
    @params parentNode(Node) 父节点
    @params childName(string) 目标子节点名称
    @return targetNode(Node) 目标子节点
    ]]
    Utils.getChildByNameEx = function(parentNode, childName)
        if not parentNode or not childName then
            return nil
        end
        if parentNode:getName() == childName then
            return parentNode
        end
    
        local children = parentNode:getChildren()
        for _, childNode in pairs(children) do
            local targetNode = Utils.getChildByNameEx(childNode, childName)
            if targetNode then
                return targetNode
            end
        end
    
        return nil
    end

    这样就可以一步到位了:

    Utils.getChildByNameEx(node_main, "txt_desc"):setString("Hello fightsyj")

    ps:

    • 使用这种方式获取子节点需要保证子节点名称在这个父节点下唯一,否则不能保证获取到你想要获取的那一个子节点!

    • 使用这种方法的时候层级跨度不要太大,毕竟递归是很消耗性能的。最好和 getChildByName() 配合使用!

    • 熬了个夜,该如何拯救我的黑眼圈呢~

    展开全文
  • childNodes,children,nextSibling 和nextElementSibling的区别之前,必须对Dom树有一定的了解,在Dom文档结构中,HTML页面每一部分都是由节点组成的,节点的类型一共有3种,元素节点,文本节点,属性节点,从图中...
  • 分享一个代码管理片段的代码,主要是用于查找物体,控制物体等等的。 静态代码片段,便于调用。 不做太多的解释,直接上代码,每个方法都有注释。 有任何问题直接留言,看到会回复 QQ791719266 备注“CSDN ...
  • JS获取子节点、父节点和兄弟节点的若干种方式

    万次阅读 多人点赞 2017-07-22 16:50:49
    一、js获取子节点的方式1.通过获取dom方式直接获取子节点其中test的父标签id的值,div为标签的名字。getElementsByTagName是一个方法。返回的是一个数组。在访问的时候要按数组的形式访问。var a = document....
  • <el-tree class="filter-tree" :data="treeData" :props="defaultProps" default-expand-all :filter-node-method="filterNode" ref="tree" @node-click="clickTree" :style="{ height:...
  • dom4j 获取子节点

    千次阅读 2018-10-16 11:07:24
    需求:dom4j获取xml的子节点 xml内容: &lt;webService&gt; &lt;head&gt; //... &lt;/head&gt; &lt;response&gt; &lt;errorList&gt; &lt;error&gt;-...
  • ZooKeeper API使用 I 获取子节点列表

    千次阅读 2018-08-27 12:59:57
    客户端可以通过 ZooKeeper 的 API 来获取子节点列表,有如下8个接口: /** * 返回指定路径下面的子节点列表。 * 如果watcher不为null,并且调用成功(没有异常),会将watcher注册在指定的path * 上。当path...
  • 使用element-ui tree获取子节点全选的父节点的信息

    千次阅读 多人点赞 2019-08-02 10:47:34
    使用el-tree来展示机构信息,然后传给...后端提出要求,如果子节点都选中了,就不要传子节点了,只要把父节点的信息传出去。翻烂了element-ui文档,也没找到现成的方法。只能自己写了,具体代码如下(参考了element-...
  • 一、js 获取元素dom(父节点,子节点,兄弟节点): var test = document.getElementById("test");  var parent = test.parentNode; // 父节点  var chils = test.childNodes; // 全部子节点  var first...
  • Vue 语法当中有一个 ref的参数,现在就就介绍一下使用方式,它的目的就是父节点,获取子节点数据的一个手段 首先我们这里有一个父节点father.vue,在这里我们定义了一个子节点child.vue,并且由父节点定义一个ref...
  • js获取子节点和修改input的文本框内容 js获取子节点: $("#"+defaultPVItemId).children().eq(3); //获取某个选择器下的第四个子节点 例如:$("#"+defaultPVItemId).children().eq(3).find('input').val('当前位置'...
  • 使用element-ui tree树形控件的时候,在选择一个子节点后,使用getCheckedKeys 后,发现只能返回子节点的ID,但是其父节点ID没有返回。 解决办法有三种: 1.element-ui 有一个获取半选择状态值ID得方法  ...
  • JQuery获取子节点的数量

    千次阅读 2018-05-29 13:18:14
    获取div下所有子节点的数量 $("div").children().length 结果为6 next()方法:获得匹配元素集合中每个元素紧邻的 同胞 元素。 $("li").next().length; 结果为5 $("li").next("li").length; ...
  • 下面小编就为大家带来一篇zTree获取当前节点的下一级子节点数实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • Java递归实现树查询,方法工具类可以直接引用,根据父节点可以获取本节点及其所有子节点数据(或获取到其下所有子节点数据)
  • Element之获取子节点方法

    万次阅读 2017-12-18 15:11:14
    1 想要读取字符串格式的xml内容。需要通过ByteArrayInputStream方法,...只能在子节点中进行获取 Element对象的element(name)方法是得到节点名称为name的子节点。返回的是Element对象
  • easyui tree获取子节点的父节点

    千次阅读 2017-12-13 15:09:54
    easyui使用tree时的一个细节,由easyui的api已近提供了详细的说明。...tree获取选中字节点的父节点以及根节点方法  var node = $('#tree').tree('getChecked', 'indeterminate'); easyuiapi文档所提供的内容:
  • import java.util.List; import org.I0Itec.zkclient.IZkChildListener; import org.I0Itec.zkclient.ZkClient; /** * * @ClassName: Get_Children_...* @Description: TODO(ZkClient获取子节点列表) * @author *
  • 前端需求。 ...// 查找一个节点的所有父节点 familyTree (arr1, id) { var temp = [] var forFn = function (arr, id) { for (var i = 0; i < arr.length; i++) { var item = arr[i] ...
  • Xml获取子节点的节点的值

    千次阅读 2017-03-08 22:21:49
    XmlDocument doc = new XmlDocument(); string url = Application.StartupPath.ToString();...//获取子节点之下的节点的值。 完美,还是没有用foreach遍历操作,很简单就可以完成的操作。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 369,926
精华内容 147,970
关键字:

获取子节点