(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
进行搜索,也一样。
有任何线索如何做到这一点?
答案 0 :(得分:0)
收听组合框上的选择事件。当它被解雇时它会更新另一个组合框。
请注意事件不要在循环中被解雇。