grid
我有以下代码
Ext.onReady(function() {var ct = Ext.create('Ext.container.VIEwport',{ layout: 'border',defaults: { collapsible: true,split: true },items: [{ Title: 'Tasks',region: 'west',margins: '5 0 0 0',cmargins: '5 5 0 0',wIDth: '50%',scrollable: true,bodyStyle: 'padding:10px',HTML: MyTest.description },{ collapsible: false,region: 'center',items: [{ xtype: 'grID',ID: 'MyGrIDPanel',Title: 'Test GrID',store: { fIElds: ['name','permissions'],proxy: { type: 'memory',reader: {type: 'Json'} },data: [{ name: 'Farms',permissions:{ 'manage': 1,'clone': 1,'launch': 0,'terminate': 0,'not-owned-farms': 0 } },{ name: 'Alerts',permissions:null },{ name: 'Servers',{ name: 'Events and notifications',{ name: 'Statistics',{ name: 'Roles',permissions:{ 'manage':1,'clone':0,'bundletasks':0 } },{ name: 'Scripts',permissions:{ 'manage':0,'execute':0,'fork':0 } }] },columns: [{ text: 'name',wIDth: 200,dataIndex: 'name' },{ text: 'Permissions',dataIndex: 'permissions',// I need to insert here a checkBox groups for elements that have permissions I guess. So what should I use here - renderer,handle? }],}] }]});
那我应该用什么呢?例如,如果我使用渲染器(不确定是否可以使用它),我可以收到复选框的所有数据(参见下面的代码),但我不知道如何渲染它.
renderer: function(value,Meta,rec,rowIDx,colIDx,store,vIEw) { var checkBoxconfigs = []; for (var variable in value) { checkBoxconfigs.push({ BoxLabel: variable,name: variable,inputValue: value[variable],checked: value[variable] }) } var checkBoxes = new Ext.form.CheckBoxGroup({ ID:'chkGroup',fIEldLabel: 'Permissions',columns: 1,items: checkBoxconfigs }); // return WHAT?;}
我很感激你的帮助!
解决方法 解:如果要渲染值,请尝试使用此列定义:
{ text: 'Permissions',renderer: function(value,cell) { var s = ''; for (var index in value) { s = s + '<input type="checkBox" '; if (value[index] == 1) { s = s + 'checked'; }; s = s + '>' + index; } return s; }}
笔记:
用ExtJs 4.2测试.
总结以上是内存溢出为你收集整理的在网格列ExtJs中的一行中显示一组复选框全部内容,希望文章能够帮你解决在网格列ExtJs中的一行中显示一组复选框所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)