我有一个问题(也许我的错误是使用错误的ExtJs,我希望我这样做)使用ExtJs在表单中进行级联组合。情况就是这样:
问题出现在我作为第一个操作时,首先点击一个后代,然后点击父级,例如,如果我只是在区域之前打开,然后打开区域并选择一个我希望它会填充区域很好..但没有任何反应。 在这种情况下,ajax-request也正确完成,并且返回的结果很好,因为返回“如果我尊重点击顺序(区域 - >区域)”。
让我说,如果,当我第一次进入页面并且我执行正常的点击顺序时,一切顺利,但是当我更改点击顺序时,正如我之前所说的那样,事情将永远不会有效
我们用来做的代码是:
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);
});
});
提前感谢任何建议!
答案 0 :(得分:1)
对于可能会发现此问题的其他人,有一个关于如何在此处编码链接组合的教程:
http://extjs.com/learn/Tutorial:Linked_Combos_Tutorial_for_Ext_2
答案 1 :(得分:0)
在第一个组合选择处理程序中调用combo-2.store.clearFilter();
以清除第二个组合内部过滤器,然后再更新它。