javascript - 具有自动建议功能的 Extjs 级联组合框

标签 javascript combobox autocomplete extjs4.2

我有两个组合框,一个用于公司,另一个用于员工。我想让员工组合框依赖于公司 ID,即应根据员工组合框中选定的值进行填充。另外,我想在员工组合框中启用自动建议。以下是我编写的代码:

{
  xtype:'combo',
  multiSelect : false,
  store :companyStore,
  afterLabelTextTpl:'<span style="color: rgb(255, 0, 0); padding-left: 2px;">*</span>',
  editable:true,
  forceSelection:true,
  id:'companyCombo',
  fieldLabel:'Company Name',
  displayField : 'CompanyName',
  valueField : 'CompanyId',
  submitEmptyText :'false' ,
  width:350,
  mode: 'remote',
  queryParam: 'query',
  hideTrigger: true,   
  selectOnFocus:true,
  typeAhead : true
},
{
  xtype:'combo',
  multiSelect : false,
  store : companyEmployeeStore,
  afterLabelTextTpl:'<span style="color: rgb(255, 0, 0); padding-left: 2px;">*</span>',
  editable:true,
  forceSelection:true,
  id:'companyEmployeeCombo',
  fieldLabel:'Employee Name',
  displayField : 'EmployeeName',
  valueField : 'EmployeeId',
  submitEmptyText :'false' ,
  width:350,
  mode: 'remote',
  queryParam: 'query',
  hideTrigger: true,   
  selectOnFocus:true,
  typeAhead : true
}


var companyStore = Ext.create('Ext.data.Store', {
    fields : ['CompanyId','CompanyName'],
    proxy : {
        url : 'getListOfCompanies',
        type : 'ajax'
    }
});

var companyEmployeeStore = Ext.create('Ext.data.Store', {
    fields : ['EmployeeId','EmployeeName'],
    proxy : {
        url : 'getListOfEmployeesForCompany',
        type : 'ajax'
    }
});

据我所知,这一行

queryParam: 'query',

会将字段的值传递到我的后端。但根据我的要求,我需要公司组合框中的 CompanyId (用于过滤/级联效果)以及我在员工组合框中输入的值在此处输入代码(用于 self 暗示)。

我怎样才能达到同样的效果?提前致谢

最佳答案

只需将 CompanyId 像 extraParams 一样添加到 beforequery 中的 companyEmployeeStore 中即可处理程序。

Ext.getCmp('companyEmployeeCombo').on({
  beforequery: function (queryPlan) {
    Ext.apply(queryPlan.combo.store.getProxy().extraParams, {
        CompanyId: EmployeeId /*bind your value*/
    });
  }
})

关于javascript - 具有自动建议功能的 Extjs 级联组合框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57693308/

相关文章:

java - 如何更改 javafx 中组合框项目的文本对齐方式?

php - 在javascript中更改选定的组合框值

javascript - ACE 编辑器自动完成工具提示

jQuery Autocomplete 插件(Jorn Zaefferer 的)- 如何动态更改显示值列表?

javascript - 如何在网页上全屏显示幻灯片?

javascript - Koa/Node.js - 在一个 Controller 功能中使用多个模型

javascript - 如何在包括标点符号和特殊字符的范围内包装字母?

Java ComboBox 不会被填充

javascript - Sails.js Assets 传送到 http

eclipse - 如何在 GoClipse 中启用自动完成?