您的位置:首页 > 产品设计 > UI/UE

extjs4.1 grid嵌入combobox,选中后显示displayField而不是valueField

2012-10-18 11:56 513 查看
View Code

var isEdit = false;//这变量和后面的方法写在ext.onready里面

cbstore = createStore();
function rendererData(value, metadata, record) {
if (isEdit) {
var index = cbstore.find(Ext.getCmp('cengm').valueField, value);
var record = cbstore.getAt(index);
return record.data.name;
} else {
return value;
}

}

function createStore() {
// The data store holding the states; shared by each of the ComboBox examples below
return Ext.create('Ext.data.Store', {
autoDestroy: true,
model: 'State',
data: states
});
}

{
header: '层面',
width: 70,
sortable: true,
dataIndex: 'cengm',
field: {
xtype: 'combobox',
id: 'cengm',
typeAhead: true,
triggerAction: 'all',
queryMode: 'local',
selectOnTab: true,
lazyRender: true,
displayField: 'name',
valueField: 'id',
store: createStore(),
listeners: {
select: function (combo, record, index) {
isEdit = true;
}//选中后事件,其他事件没试验成功
}
//value: '01'
//editable: false
},
renderer: rendererData
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: