在网格列ExtJs中的一行中显示一组复选框

在网格列ExtJs中的一行中显示一组复选框,第1张

概述我是ExtJs的新手,我试图以这种方式显示复选框组 grid 我有以下代码 Ext.onReady(function() {var ct = Ext.create('Ext.container.Viewport', { layout: 'border', defaults: { collapsible: true, split: true 我是ExtJs的新手,我试图以这种方式显示复选框组
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中的一行中显示一组复选框所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1039219.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存