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