如何仅在表单字段完全加载后发出Ext.Ajax.request

如何仅在表单字段完全加载后发出Ext.Ajax.request,ajax,extjs,Ajax,Extjs,我有一个函数,它使用以下代码获取表单值- var formValues = this.myForm.getForm().getValues(); MyForm包含一个用表单加载的组合框。(组合加载和表单加载有两个单独的请求) 由于这两个请求同时加载,上述代码不会返回组合值,因为它们仍在加载 有没有办法检查是否加载了组合值,然后只发送ajax表单加载请求,这样上面的代码就会有所有表单值 编辑: LoadComboBox函数只是用一些存储来填充数据 下面是表单加载的代码- loadFormGrid

我有一个函数,它使用以下代码获取表单值-

var formValues = this.myForm.getForm().getValues();
MyForm包含一个用表单加载的组合框。(组合加载和表单加载有两个单独的请求)

由于这两个请求同时加载,上述代码不会返回组合值,因为它们仍在加载

有没有办法检查是否加载了组合值,然后只发送ajax表单加载请求,这样上面的代码就会有所有表单值

编辑:

LoadComboBox函数只是用一些存储来填充数据

下面是表单加载的代码-

loadFormGrid: function (){
var allValues = this.myForm.getForm().getValues(); // this do not consider combobox values

Ext.Ajax.request({
      params: {action: 'getList', data : allValues },

      // ... some code
 });
}

我会这样做:

在组合框加载的成功事件中,调用表单的加载方法/发出ajax请求以填充表单的字段

编辑: 我的意思是:

实例化组合框的位置可能如下所示:

var combo = new Ext.form.ComboBox({
 store : new someStoreType({
           //add to catch the loaded event
           listeners : {
              'load' : function(store, recs, options){
                      loadFormGrid(); 
                  } 
            }
         })
});

上面的存储侦听器(
'load'
)将在组合框加载时捕获,并调用函数来填充/加载表单

一个更新-我不能在组合框加载中进行更改,我只能更改表单加载method@ShikhaShah,如何加载组合框和表单?你能用代码的演示创建一个小提琴吗?或者在您的问题中粘贴一些代码?解决方案看起来不错。但是我不能在组合加载中进行更改。在获取表单值之前,我想检查是否所有表单字段都已完成加载(我想我只能在loadFormGrid()中完成)。@ShikhaShag,然后您必须硬编码检索comboxbox的选定值,并检查它是否已加载。所以,combobox.getValue()。