【发布时间】:2014-07-11 15:53:20
【问题描述】:
(ExtJS 4.2.1)
我有两个combobox 用于搜索员工。
一个按员工编号搜索员工,另一个按姓名搜索员工:
这是两个组合框共享的商店:
var cboEmployeeStore = Ext.create('App.store.employee.EmployeeCombo');
cboEmployeeStore.getProxy().extraParams = {
employerId: 0
};
这些是我的组合框:
xtype: 'combobox',
itemId: 'cboEmployeeNumber',
width: 180,
store: cboEmployeeStore,
cls: 'arigth',
displayField: 'EmployeeNumber',
valueField: 'EmployeeId',
queryMode: 'remote',
fieldLabel: 'Clave',
editable: true,
hideTrigger: true,
queryParam: 'searchStr',
name: 'EmployeeNumber',
allowBlank: false,
minChars: 3,
listConfig: {
loadingText: 'Searching...',
minWidth: 300,
// Custom rendering template for each item
getInnerTpl: function () {
return '<b>{EmployeeNumber}</b> / {FullName}';
}
}
xtype: 'combobox',
itemId: 'cboEmployee',
width: 400,
store: cboEmployeeStore,
cls: 'arigth',
displayField: 'FullName',
valueField: 'EmployeeId',
queryMode: 'remote',
fieldLabel: 'Employee',
editable: true,
hideTrigger: true,
queryParam: 'searchStr',
name: 'EmployeeId',
allowBlank: false,
listConfig: {
loadingText: 'Searching...',
// Custom rendering template for each item
getInnerTpl: function () {
return '<b>{EmployeeNumber}</b> / {FullName}';
}
}
两者都使用同一家商店。商店是远程的,因此在您键入后,商店将被服务器的结果填充。
我需要的是,如果我在
cboEmployeeNumber组合框中搜索然后选择一个值,那么我的cboEmployee应该得到相同的记录。如果我在cboEmployee中进行搜索,也是如此。
有什么办法吗?
【问题讨论】:
-
我知道该怎么做,但你自己试过什么?
-
我试过了:me.getEmployeeCombo.setValue(record.get('EmployeeId'));
标签: extjs extjs4 extjs4.1 extjs4.2 extjs-mvc