json 将值加载到 extjs 复选框组网格编辑器中
Posted
技术标签:
【中文标题】json 将值加载到 extjs 复选框组网格编辑器中【英文标题】:json to load values into extjs checkboxgroup grid editor 【发布时间】:2011-05-03 16:35:33 【问题描述】:我需要设置一个 CheckboxGroup 复选框,其中包含从某个 url 加载的 json 值。 JSON 的正确格式是什么?
非常感谢您的帮助!
更新:我会澄清我的问题。
我正在使用 EditorGridPanel。行是句点。有 Start_at、Finish_at、Region 列。第一个和第二个是日期,一切都很好。 Region 的问题实际上是一个 CheckboxGroup,每个工作日都有一个复选框 - 星期一、星期二等。所以:
首先我将数据从服务器加载到存储中
function setupDataSource()
row = Ext.data.Record.create([
name: 'start_at', type: 'string' ,
name: 'finish_at', type: 'string' ,
name: 'region', type: 'string'
]);
store = new Ext.data.Store(
url: '/country/195/periods',
reader: new Ext.data.JsonReader(
root: 'rows',
id: 'id'
,
row
)
);
store.load();
URL url: '/country/195/periods' 返回 JSON:
"rows": ["region": "cbvert_1": 1, "cbvert_2": 0, "cbvert_3": 1, "cbvert_4": 0, "cbvert_5": 1, "cbvert_6": 0, "cbvert_7": 1, "start_at": "2010-10-17", "id": 1, "finish_at": "2010-10-28"]
然后我正在构建一个网格:
function buildGrid()
sm = new Ext.grid.RowSelectionModel();
cm = new Ext.grid.ColumnModel([
// ... Start at and Finish at columns definition here ...
header: 'Region',
dataIndex: 'region',
width: 150,
editor: new Ext.form.CheckboxGroup(
xtype: 'checkboxgroup',
columns: 7,
vertical: true,
items: [
boxLabel: 'M', name: 'cbvert_1', inputValue: 1,
boxLabel: 'T', name: 'cbvert_2', inputValue: 1,
boxLabel: 'W', name: 'cbvert_3', inputValue: 1,
boxLabel: 'T', name: 'cbvert_4', inputValue: 1,
boxLabel: 'F', name: 'cbvert_5', inputValue: 1,
boxLabel: 'S', name: 'cbvert_6', inputValue: 1,
boxLabel: 'S', name: 'cbvert_7', inputValue: 1,
]
),
renderer: function(value)
]);
// ...
因此,当我单击网格单元格时,我需要使用先前存储在数据库中的值预先选择复选框。现在所有复选框都保持空白,但在 JSON 中应该是 1010101。
请指出错误或某种解决方案。任何帮助将不胜感激。 非常感谢!
【问题讨论】:
【参考方案1】:看看这个: http://www.sencha.com/forum/showthread.php?47243-Load-data-in-checkboxgroup
更新: 删除区域字段的类型声明。您不需要字符串而是对象(来自 JSON)。这样就很好用了:)
【讨论】:
感谢 Donatas 的帮助!不幸的是,我在那里没有找到可行的解决方案。我已尝试应用 json 格式,但仍然无法正常工作:(。我已经更新了我的帖子并提供了详细说明。请说一下你的想法?谢谢!以上是关于json 将值加载到 extjs 复选框组网格编辑器中的主要内容,如果未能解决你的问题,请参考以下文章
以编程方式将记录添加到 ExtJS 中的网格后切换单元格编辑器
Extjs Combo - 如何使用 GetForm().load 将值加载到组合
Extjs5 如何设置grid的某行的某列单元格处于编辑状态