jquery 从子节点查找符合条件的父节点

在工作中写了一个树,当用户输入人员信息的时候点击查询的时候,需要查找到树中的节点,然后展开节点。

想到了两种思路:

思路一:

在树中找到了目标节点,判断目标节点的父节点是否是根节点,如果不是根节点,则让父节点展开,继续递归判断当前节点的父节点,如果是根节点,则不递归,展开节点。(这种方式比较复杂(麻烦),主要是递归算法)

思路二:

使用jquery 查找到目标节点,然后在树的范围内去查找其所有的父节点(这样就不会查找到树范围外的节点),然后展开节点即可

组织树的HTML结构
<ul id="rightTreePanel">
	<li>
		<div>我是父节点</div>
		<ul>
			<li>
				<div>我是子节点</div>
			</li>
		</ul>
	</li>
</ul>

<script>
// 展开父节点所有的层级
$(" li[data_id='"+obj.id+"']", $("#rightTreePanel")).parents("ul").show();
</script>

相关推荐