miniui吧 关注:63贴子:151
  • 7回复贴,共1

TreeGrid刷新后如何保持原展开状态

只看楼主收藏回复

RT,TreeGrid树在每次刷新后都回归全部展开或全部折叠状态,如何在刷新后保持原展开状态?


IP属地:山东1楼2016-05-06 09:21回复
    请问解决了吗?也在纠结这个问题


    IP属地:山东3楼2016-05-26 14:22
    回复
      使用treegrid的reload方法时,需要注意当前树状表格的状态,如果表格当前未展开的状态的话,只可以直接调用reload方法来重新加载数据,但是如果当前树状表格的状态是展开的状态(有子节点了),那么调用reload方法会重新加载数据,但是加载的并不是父节点的url,而是子节点的url。加载完后会用子url的请求数据渲染treegrid,显示不正确。这个时候可以先用options方法获取url,将url重置为父节点的url,再调用reload方法即可


      IP属地:浙江4楼2017-02-20 21:38
      回复
        解决了吗


        5楼2017-08-24 11:07
        回复
          先用options方法获取url,将url重置为父节点的url,再调用reload方法即可
          有没有源码


          6楼2017-08-24 11:09
          回复
            onLoadSuccess:function()
            {
            var list=[];
            for(var j=0;j<expnode.length;j++){
            list.push(expnode[j])
            }
            $("#easytree").tree("collapseAll");
            for(var i=0;i<list.length;i++){
            var node = $('#easytree').tree('find', list[i]);
            $('#easytree').tree('expand', node.target);
            }
            },
            onBeforeExpand:function(node){
            expnode.push(node.id.toString());
            },
            onBeforeCollapse:function (node) {
            var i=expnode.indexOf(node.id.toString());
            if(i>=0){
            expnode.splice(i,1);
            }
            }


            IP属地:江苏7楼2017-11-06 15:52
            收起回复