0

ON 选择行即时调用

   $('#grid').trigger('reloadGrid');

之后,当网格重新加载时,我希望这个节点展开并显示子节点。我试着做类似的事情

var rootNode = $('#grid').jqGrid('getRowData')[0];
           $('#grid').jqGrid('expandRow'   ,rootNode);
           $('#grid').jqGrid('expandNode'  ,rootNode);  
           $('#grid').jqGrid('setSelection',rootNode.id);   

但这似乎不起作用,感谢任何帮助。

我的网格对象如下

    var grid = $('#grid').jqGrid({
        treeGrid: true,
        treeGridModel: 'adjacency',
        ExpandColumn: 'businessAreaName',
        ExpandColClick : false,
        url:'/records.do',
        datatype: 'json',
        mtype: 'GET',
        colNames:['Id'
                  , 'Business Area'
                  , 'Investment'                  
                  ],
        colModel:[
/*00*/          {name:'Id',index:'Id', width:0, editable:false,hidden:true},
/*01*/          {name:'businessAreaName',index:'businessAreaName', width:160, editable:false}

        ],
        treeReader : {
            level_field: 'level',
            parent_id_field: 'parent', 
            leaf_field: 'leaf',
            expanded_field: 'expanded'
        },
        autowidth: true,
        height: 240,
        pager: '#pager',
        sortname: 'id',
        sortorder: 'asc',
        caption:'ATP ScoreCard',
        emptyrecords: 'Empty records',
        loadComplete: function() {
            designtable();          
        },
        jsonReader : {
            root: 'rows',
            page: 'page',
            total: 'total',
            records: 'records',
            repeatitems: false,
            cell: 'cell',
            id: 'agileProgrammeId'
        },
        beforeProcessing : function(data, status, xhr){
            }
        }
    });
4

1 回答 1

1

首先expanded,您可以填写隐藏列(请参见此处此处)。因此,如果您在要打开的节点之后包含需要直接打开的节点的子节点并expanded: true在其属性中设置,则树节点将显示为打开状态。

可能是您想跟踪哪些节点打开了用户并在下次访问同一页面时恢复节点。在这种情况下,我会将您转发给答案这个

于 2012-04-13T08:54:50.647 回答