提供一种确保树形图刷新后状态不变的方案
发布时间
阅读量:
阅读量
Easyui框架中的treegrid组件提供了一个reload方法,但调用该方法后会导致树形结构的重新初始化,从而使得先前已经展开的节点状态被重置。
期望实现的功能如下:
当用户展开A节点,并在该节点下新增一个B子节点时,即使页面刷新后,A节点仍应保持已展开的状态。
实现思路如下:
treegrid组件中包含一个expand方法,需传入特定节点的ID作为参数,其作用是将对应节点展开。若能记录所有已展开的节点信息,并在treegrid完成reload操作后,首先将所有节点折叠,再依次对已记录的节点进行展开操作,则可实现所需效果。
具体步骤包括:
首先,需要定义一个数组用于存储所有已展开的节点ID。随后,在onBeforeExpand事件触发时,将当前被点击展开的节点ID添加至该数组中。
接着,在onBeforeCollapse事件发生时,从数组中移除对应的被折叠节点ID。
最后,在treegrid组件的onLoadSuccess事件中遍历该数组,并对每个记录的节点执行展开操作即可实现目标。
代码部分:
<script type="text/javascript">
var recordNodes = new Array();//定义一个数组容器记录已被展开的节点ID
$(function () {
$
全部评论 (0)
还没有任何评论哟~
