Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ajax ExtJs级联组合问题_Ajax_Extjs_Cascadingdropdown - Fatal编程技术网

Ajax ExtJs级联组合问题

Ajax ExtJs级联组合问题,ajax,extjs,cascadingdropdown,Ajax,Extjs,Cascadingdropdown,我有一个问题(可能是我错误地使用ExtJs,我希望我会这样做)使用ExtJs在表单中进行级联组合。情况就是这样: 我有3个组合,区域,地区,城市 当我按顺序单击其中一个时,相关的一个将被更新,并使用Json作为数据格式发出ajax请求(因此,即使我认为这没有用,顺序也是正常的顺序Zones->Regions->Cities) 即使它不是那么重要,我还是在ASP.NETMVC后端 当我做第一个操作时,首先单击子体,然后单击父体,例如,如果我只是在区域之前打开,然后打开区域并选择一个区域,我希望它能

我有一个问题(可能是我错误地使用ExtJs,我希望我会这样做)使用ExtJs在表单中进行级联组合。情况就是这样:

  • 我有3个组合,区域,地区,城市
  • 当我按顺序单击其中一个时,相关的一个将被更新,并使用Json作为数据格式发出ajax请求(因此,即使我认为这没有用,顺序也是正常的顺序Zones->Regions->Cities)
  • 即使它不是那么重要,我还是在ASP.NETMVC后端
  • 当我做第一个操作时,首先单击子体,然后单击父体,例如,如果我只是在区域之前打开,然后打开区域并选择一个区域,我希望它能很好地填充区域。。但什么也没发生。 在这种情况下,ajax请求也会正确执行,结果Json数据也会返回,返回的结果与“如果我遵守单击顺序(区域->区域)”相同

    我要说的是,当我第一次进入页面时,我做了一个正常的点击顺序,一切都进行得很顺利,但是当我改变点击顺序时,正如我之前所说的,事情将永远无法继续

    我们使用的代码是:

    var RegionsStore = new Ext.data.JsonStore({
                                  url:'/mypath/blabla',
                                  fields:['Value','Text']
                       });
    Ext.onReady(function() {
        Ext.getCmp('ext-Area').on('select', function(sender, item) {
            var target = Ext.getCmp('ext-Regions');
            target.setDisabled(true);
            target.setValue('');
            target.store.removeAll();
            target.displayField = 'Text';
            target.valueField = 'Value';
            target.store = RegionsStore;
            target.store.reload({
                   params: { 
                      data: 'regions', 
                      discriminator: 'area', 
                      value: sender.getValue()
                   }
            });
            target.setDisabled(false);
        });
    });
    

    提前感谢您的建议

    调用
    combo-2.store.clearFilter()以在更新第二个组合内部筛选器之前清除它。

    调用
    combo-2.store.clearFilter(),以在更新第二个组合内部筛选器之前清除该筛选器。

    对于可能发现此问题的其他人,这里有一个关于如何编码链接组合的教程:


    对于其他可能会发现此问题的人,这里有一个关于如何编写链接组合的教程:


    你把它放在这之后了吗?target.store.reload({params:{data:'regions',discriminator:'area',value:sender.getValue()}target.store.clearFilter();您可能还需要将目标组合的值设置为“”(空字符串)。是否将其放在这之后?target.store.reload({params:{data:'regions',discriminator:'area',value:sender.getValue()}target.store.clearFilter();您可能还需要将目标组合的值设置为“”(空字符串)。