Cuando trato de llenar combos, al cargar la página usando la funcion de JQuery
$(document).ready(function() ... y window.onload = function() { ...
unicamente lleno el ultimo combo de 6 que tengo, los combos se encuentran en la
estructura del archivo en orden descendente esto quiere decir que del 1 - 5 quedan sin elementos y el 6 se llena con la ultima llama a AJAX. Salvo esta cosa que esta funcionando incorrectamente todo lo demas funciona chido, se los paso cuando termine con este proyecto van a poder llenar combos dinamicamente y con llamadas asincronas con un par de archivos.
Este es el codigo:
Código PHP:
$(document).ready(function(){
//funcion para llenar combos
function agregarItemsCombo( json, combo ){
if( !json.length <= 0 ){
combo.disabled = false;
for( var j = 0; j < json.length; j++ ){
combo.options[j] = new Option(json[j].descr, json[j].clave);
}//fin del ciclo for
}//fin del condicional if
}
//cuando se inicie la carga de pagina llamar AJAX
window.onload = function() {
$('select').each(function(i) {
combo = this;
modulo = this.id;
caso = modulo.substring( 0, 3 );
if ( !( caso == 'dep' || caso == 'uni' ) ){//sino se trata de ninguno de los casos uni o dep
$.ajax({
type: 'get', //Forma en que lo va a mandar
dataType: 'json', //Formato en que lo va a devolver
url: '/salud/cargarCombo.do', //url, struts se encarga de resolver la url, entonces mandar un .do
data: { valor2: modulo, valor1: 'null' }, //la información que voy a mandar
success: function( json ){//si todo funciona bien
agregarItemsCombo( json, combo );
}
});//fin de llamada AJAX
}//fin del condicional if
});//fin de each
};//fin de la funcion onload
});