如何将jqGrid(4.x)配置为树状视图

如何将jqGrid(4.x)配置为树状视图,jqgrid,Jqgrid,我已经采取了演示代码,并试图修改它,以满足我的需要,但不幸的是,我无法得到预期的结果 树网格正在加载和“绑定”,但在展开和折叠过程中,层次结构似乎存在问题(我更希望它在默认情况下保持展开状态),看起来它正在对数据发出另一个ajax请求,而它不应该这样做 获取数据的第一个调用检索运行所需的一切 DTO: [可序列化] 公营公司 { 公共字符串CompanyId{get;set;} 公共字符串CompnayName{get;set;} 公共布尔扩展{get;set;} 公共布尔isLeaf{get;

我已经采取了演示代码,并试图修改它,以满足我的需要,但不幸的是,我无法得到预期的结果

树网格正在加载和“绑定”,但在展开和折叠过程中,层次结构似乎存在问题(我更希望它在默认情况下保持展开状态),看起来它正在对数据发出另一个ajax请求,而它不应该这样做

获取数据的第一个调用检索运行所需的一切

DTO:

[可序列化]
公营公司
{
公共字符串CompanyId{get;set;}
公共字符串CompnayName{get;set;}
公共布尔扩展{get;set;}
公共布尔isLeaf{get;set;}
公共字符串级别{get;set;}
公共字符串父项{get;set;}
来自DataReader(OracleDataReader r)的公共静态公司
{
返回新公司
{
CompanyId=r[“CompanyId”]是否为DBNull?null:r[“CompanyId”]。ToString(),
CompnayName=r[“companyname”]是否为DBNull?null:r[“companyname”]。ToString(),
level=r[“公司级别”]是否为DBNull?null:r[“公司级别”]。ToString(),
parent=r[“parent\u company\u id”]是否为DBNull?null:r[“parent\u company\u id”]。ToString(),
isLeaf=Convert.ToInt64(r[“子项计数”])==0?真:假,
扩展=真
};
}
}
控制器:

[HandleJsonException]
公共JsonResult公司服务()
{
var profiler=MiniProfiler.Current;
使用(profiler.Step(“公司”))
{
var q=Repository.getcompanys(SimpleSessionPersister.User.Id).ToList();
var结果=(来自q中的c)
选择新字符串[]
{
转换为字符串(c.CompanyId),
c、 公司名称,
c、 水平,
c、 家长,
转换为字符串(c.isLeaf),
Convert.ToString(c.expanded)
}).ToArray();
var jsonData=new
{
行=结果
};
返回Json(jsonData、JsonRequestBehavior.AllowGet);
}
}
网格初始化:

var公司网格;
$(文档).ready(函数(){
变量col_name=['CompanyId','Company'];
var col_模型=[
{name:'CompanyId',index:'CompanyId',宽度:1,隐藏:true,键:true},
{名称:'Company',索引:'Company',宽度:300,}
];
companyGrid=$(“#TreeGridCompanys”);
companyGrid.jqGrid({
url:“/xxx/yyy/zzz/”,
数据类型:“json”,
ajaxGridOptions:{contentType:“application/json”},
jsonReader:{
id:“公司id”,
单元格:“”,
根:函数(obj){return obj.rows;},
第页:函数(){return 1;},
总计:函数(){return 1;},
记录:函数(obj){return obj.rows.length;},
重复项:正确
},
colname:colu名称,
colModel:col_模型,
高度:“100%”,
行数:10000,
可排序:false,
特雷格里德:没错,
扩展栏:“公司”
});
网格Json数据:

{“rows”:[“754568001”,“布朗斯通根”,“1”,“1736451491”,“假”,“真”,“2974914503”,“美国酒店登记管理”,“2”,“754568001”,“真”,“真”,“真”,“2976495739”,“安德烈开发目录”,“2”,“754568001”,“真”,“真”,“真”,“2129814647”,“达西公司”,“2”,“754568001”,“真”,“真”,“真”,“真”,“1736764899”,“编辑”,“2”,“754568001”,“假”,“真”][“1736764905”、“布朗斯通-柯尔斯滕·路易斯”、“2”、“75456801”、“假”、“真”]、[“2977223369”、“测试新布朗斯通2”、“2”、“75456801”、“真”、“真”]、[“2977223203”、“测试新布朗斯通公司”、“2”、“75456801”、“真”、“真”]、[“2161775149”、“B2BApp-琼斯”、“3”、“1736764905”、“假”、“真”]、[“2975929355”、“B2P-比尔·赫希”、“3”、“17367BAP905”、“真””真“]、[“2975929365”、“B2BApp演示-比尔·赫希”、“3”、“1736764905”、“真”、“真”]、[“1736764898”、“布朗斯通-待定-会计总监”、“3”、“1736764899”、“假”、“真”]、[“1736764903”、“布朗斯通-汤姆·帕克”、“3”、“1736764905”、“假”、“真”]、[“2051802334”、“B2BApp-艾伦香槟”、“4”、“1736764903”、“真”、“真”、“真”、“真”、“真”、“20591110298”、“B2BApp-杰克·诺列加”,“4”,“1736764903”,“真”,“真”,“真”,“2051800719”,“B2BApp-史蒂夫·沃纳”,“4”,“1736764903”,“真”,“真”,“2129810951”,“KIRSTEN DEMO”,“4”,“2161775149”,“假”,“真”,“假”,“真”,“布朗斯通-马特·范宁”,“4”,“1736764898”,“假”,“真”,“1737913153”,“布朗斯通-拉蒙·博特维特”,“4”,“1736764903”,“真”,“真”,“1736764996”,“布朗斯通酒店-管理”、“4”、“1736764903”、“假”、“真”、“1766184823”、“资产管理”、“5”、“1736764897”、“真”、“真”、“2977073604”、“支票簿总账周期测试”、“5”、“2129810951”、“真”、“真”、“真”、“真”、“D&C项目经理”、“5”、“1736764897”、“真”、“真”、“2976570081”、“演示支票簿”、“5”、“2129810951”、“假”、“真”、“真”2220489862、“演示报告”、“5”、“2129810951”、“真”、“真”]、[“207846743”、“禁用的布朗斯通账户”、“5”、“1736764897”、“真”、“真”]、[“1736764902”、“布朗斯通-鲍勃·奥尔特”、“5”、“1736764996”、“假”、“真”]、[“1736764695”、“布朗斯通公司办公室”、“5”、“1736764897”、“真”、“真”]、[“2005626695”、“布朗斯通酒店”、“5”、“1736764897”、“假”、“真”],[“1736765065”,“布朗斯通酒店”,“5”,“1736764897”,“假”,“真”],[“2010587742”,“布朗斯通酒店”,“5”,“1736764897”,“假”,“真”],[“1736765062”,“布朗斯通酒店”,“5”,“1736764897”,“假”,“真”],[“176620034”,“布朗斯通酒店”,“5”,“1736764897”,“假”,“真”],[“1736765059”,“布朗斯通酒店”,“5”,“1736764897”,“假”,“真”],[“1736765090”“,”布朗斯通酒店“,”5“,”1736764897“,”假“,”真“,[”1736022491“,”布朗斯通RVPS“,”5“,”1736764897“,”假“,”真“,”,[”2977230825“,”TESTDEFAULTREGION1“,”5“,”2129810951“,”真“,”,[”1735853749“,”圣迭戈老城四合院“,”6“,”1736765060“,”真“,”真“,[”1735854977”,“弗雷斯诺机场四合院”,“6”,“1736765062”