我无法弄清楚我需要做什么才能动态加载ExtJS网格的列。我希望能够将列标题作为JSON发送,并让网格获取该标题并生成所需的列。
更具体地说,我想使用GroupingHeader插件来做这件事,但我真的只是想弄清楚如何在没有增加GroupingHeader插件的复杂性的情况下做到这一点然后我可以解决这个问题:)
以下是我对列标题的一些示例JSON数据:
[
{
"run_id":"110207gad",
"iterations":[
"1_14",
"2_16",
"3_18",
"4_20",
"5_22"
]
},{
"run_id":"110207gae",
"iterations":[
"1_14",
"2_16",
"3_18",
"4_20",
"5_22"
]
}
]
这是我需要进行分组的数据,其中run_id
是分组标题,iterations
是列标题。现在,我很高兴让iterations
显示为列,然后我可以努力让分组工作。
如果有人能指出我正确的方向或给我一些关于从哪里开始的提示,那将是非常有帮助的!我自己并不仅仅想到这一点,但我只是需要一点点开始,因为我似乎无法从查看ExtJS示例和进行一些谷歌搜索中找到答案。
答案 0 :(得分:1)
我建议您查看ExtJS示例的源代码。
http://dev.sencha.com/deploy/dev/examples/grid/array-grid.js
它应该为您提供相当多的信息以便开始使用。
您可以从此格式开始,从服务器传递它:
{"success":true,"message":"Loaded data","data":[{"run_id":1,"iterations":"1"},{"run_id":2,"iterations":"2"},{"run_id":3,"iterations":"3"}]}
然后你的读者会是这样的:
var reader = new Ext.data.JsonReader({
totalProperty: 'total',
successProperty: 'success',
idProperty: 'run_id',
root: 'data',
messageProperty: 'message'
}, [
{name: 'run_id'},
{name: 'iterations', allowBlank: false}
]);