ExtJS4.0 JSON数据无法显示的问题

mac2022-06-30  30

Ext.regModel('EncyModel', { fields: ['ENCY_ID', 'UP_ENCY_ID', 'ENCY_NAME', 'ENCY_PAGE_ID', 'ENCY_SEQ'] });

var store = Ext.create('Ext.data.TreeStore', { proxy: { type: 'ajax', url: '/Scripts/check-nodes2.json', reader: { type: 'json' }, }, model:'EncyModel', //nodeParam: 'ENCY_ID', root: { text: '百科', id: '-1', }var tree = Ext.create('Ext.tree.Panel',

{ renderTo: "main", store: store, rootVisible: true, useArrows: true, title: "词条组管理", height: 400, width: 980, frame: true, bodyPadding: 5, columns: [{ xtype: 'treecolumn', text:'百科', dataIndex: 'ENCY_NAME', width: 150, sortable:true }, { text:'详细', dataIndex: 'ENCY_ID', width: 150, sortable:true } ]

1.JSON格式返回有问题

2.Ext.data.TreeStore 中root 必须要写 

root: {

text: '百科', // text 字段是跟 model 中的名称 在这个里面应该是 ENCY_NAME=‘百科’ENCY_ID: '-1', }

3.显示出来 数据没有显示名称,只有文件夹 没有文件夹名称,发现把 dataIndex: 'text' 设置为text 更改JSON 返回文件把名称修改为‘text’ 相对应就可以了

那我还要是想显示别的字段呢,我的JSON 里有好多个字段。经过研究 要指定 model ,不指定model就要写在Ext.data.TreeStore中增加 fields:['name','text','ENCY_ID'],  显示这么多字段,EXT就可以自动匹配了,不然在Treepanel 里dataIndex 就只能识别默认的text 字段。

4.返回数据中要用children 作为集合的名称,要用 leaf 字段显示是否是 叶子,

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/90nice/archive/2013/05/29/3106048.html

最新回复(0)