0
论坛成员我有一个问题是显示组合框名称选择值到我的gridpanel列。如何显示多选从组合框到网格面板的值extjs 4
我有一个包含资源组合框的列的gridPanel,用户可以从资源中选择多个值。下面
是我与列组合框 GridPanel中列
{
xtype: 'gridcolumn',
dataIndex: 'resourceid',
text: 'Resource',
field: resourcecombo
},
resourcecombo
var resourcecombo = new Ext.form.ComboBox({
id: 'resourceid',
name: 'resourceid',
emptyText: 'Select resource',
displayField: 'firstname',
store: Ext.create('rms.store.employee'),
valueField: 'id',
multiSelect: true,
queryMode: 'local',
typeAhead: true
});
在这里我得到的资源列表,我可以做多选也GridPanel中柱。基于这个多重选择的ID发送到服务器,并与我想要设置值的网格列的响应。
但是,错误的是我得到了服务器的正确响应,但我的网格列在此列中只显示一个名称。。
我想显示选择的所有资源,用逗号标志,像 仙人,瑜伽师,西仁等
解决方案 只是改变与的GridColumn分离的名字下面的代码
xtype: 'gridcolumn',
dataIndex: 'resources',
header: 'Resources name',
field: resourcecombo,
renderer: function(resources){
var result = [];
resources = resources || [];
for (var idx = 0, len = resources.length; idx < len; idx++){
var value = resources[idx].name;
if(value){
result.push(value);
}
}
return result.join(', ');
}
并用以下代码更改模型
Ext.define('rms.model.taskmainModel', {
extend : 'Ext.data.Model',
fields : [
{ name : 'id', type : 'int' },
{ name : 'taskname', type: 'string'},
**{ name : 'resources', type: 'auto'},**
{ name : 'cmpname', mapping: 'project.company.cmpname'}
]
});
上面的解决方案适用于我,希望这可能会有所帮助。
感谢您的支持。
感谢您的回复,我的问题已解决。以上是我的解决方案 – 2012-04-17 09:39:04