PDA

View Full Version : ajax combobox



mntek
30 Nov 2011, 7:56 AM
Hello!I'm use two comboboxes, select value in first fire ajax store update in second. Update works good, but on second and more updates in second combobox appear loading panel, which not closed, like this:29704

extjs 4.0.7, code:


var languageStore = new Ext.data.Store({
autoLoad: true,
storeId: 'languagesStore',
proxy: {
type: 'ajax',
url: 'languages.json.php',
reader: {
type: 'json',
root: 'languages'
}
},
fields: [{name: 'id', type: 'int'}, {name: 'name', type: 'string'}]
});


var languageCombobox = new Ext.form.ComboBox({
fieldLabel: '????',
id: 'language-combo',
store: languageStore,
disabled: false,
valueField: 'id',
displayField: 'name',
emptyText: '???????? ??????',
editable: false,
listeners:
{
select:
{
fn: function(combo, value)
{
var cc = Ext.getCmp('country-combo');
cc.clearValue();
if (cc.isDisabled())
cc.setDisabled(false);
cc.getStore().load({params: {languageId: combo.getValue()}});
}
}
}
});


var countryStore = new Ext.data.Store({
storeId: 'countriesStore',
proxy: {
type: 'ajax',
url: 'countries.json.php',
reader: {
type: 'json',
root: 'countries'
}
},
fields: [{name: 'id', type: 'int'}, {name: 'name', type: 'string'}]
});


var countryCombobox = new Ext.form.ComboBox({
fieldLabel: '??????',
id: 'country-combo',
store: countryStore,
disabled: true,
valueField: 'id',
displayField: 'name',
emptyText: '???????? ??????',
queryMode: 'local',
editable: false
});


Json answer look like this:


{"countries":[{"id":"1","name":"Great Britain"},{"id":"2","name":"USA"}],"total":2}

Can I hide this loading panel?

mitchellsimoens
30 Nov 2011, 9:19 AM
This bug has been fixed in the next release (4.1.0 beta)