Tengo un "pequeño" problema con la carga de combos anidados, a ver si alguien me puede echar un cable.
Por un lado tengo el combo paises, que carga nada más inicializar el formulario y luego un combo dependiente, llamado provincias, que carga según el país seleccionado.
La carga me la efectúa sin problemas, pero (siempre hay un pero), tengo que seleccionar 2 veces el país la primera vez.. me explico
1.- Cargo el formulario
2- selecciono el país
3.- voy a seleccionar la provincia y no tengo datos
4.- selecciono el país de nuevo y me carga las provincias de dicho país
5.- selecciono otro país (sin cerrar el formulario) y me carga las provincias de ese otro país.
y así, mientras no cierre el formulario
he estado haciendo debug, y el caso es que el php, la primera vez que selecciono el país, no recibe el parámetro de la tarea a ejecutar ni del país sobre el cual efectuar la búsqueda de sus provincias..
Adjunto el código a ver si alguien me puede echar una mano
Y gracias por adelantado
- Código: Seleccionar todo
var mystore_provincia = new Ext.data.Store({
proxy: new Ext.data.HttpProxy({
url: '../Remote/rellena_combos.php',
method: 'POST'
}),
reader: new Ext.data.JsonReader({
root: 'resultados_provincia',
totalProperty: 'total_provincia',
id: 'id_provincia'
}, [ { name: 'id_provincia' },
{ name: 'nombre_provincia' }
] )
});
Busca_Provincia_Empresa = new Ext.form.ComboBox({
id: 'Busca_Provincia_Empresa',
fieldLabel: 'Provincia',
name: 'Busca_Provincia_Empresa',
store: mystore_provincia,
displayField: 'nombre_provincia',
valueField: 'id_provincia',
selectOnFocus: true,
anchor: '95%',
emptyText:'Por favor seleccione...',
triggerAction: 'all',
disabled: true
});
var mystore_pais = new Ext.data.Store({
proxy: new Ext.data.HttpProxy({
url: '../Remote/rellena_combos.php',
method: 'POST'
}),
baseParams: {
tarea_combo: 'COMBO_PAIS'
},
reader: new Ext.data.JsonReader({
root: 'resultados_pais',
totalProperty: 'total_pais',
id: 'id_pais'
}, [ { name: 'id_pais' },
{ name: 'nombre_pais' }
] )
});
Busca_Pais_Empresa = new Ext.form.ComboBox({
id: 'Busca_Pais_Empresa',
name: 'Busca_Pais_Empresa',
fieldLabel: 'Pais',
store: mystore_pais,
displayField: 'nombre_pais',
valueField: 'id_pais',
selectOnFocus: true,
anchor: '95%',
emptyText:'Por favor seleccione...',
triggerAction: 'all',
listeners:{
'select': function (combo,record,index){
Busca_Provincia_Empresa.enable();
mystore_provincia.load({
params: {
id_pais: combo.getValue(),
tarea_combo: 'COMBO_PAIS_PROVINCIA'
}
});
mystore_provincia.reload();
}
}
});



