Foros del Web » Programando para Internet » Javascript »

problemas al cargar opcion select con valores de base de datos

Estas en el tema de problemas al cargar opcion select con valores de base de datos en el foro de Javascript en Foros del Web. Hola, tengo tres combos que llenan pais de la una consulta a la base de datos, y si es vzla, activa el combo de estados ...
  #1 (permalink)  
Antiguo 25/10/2005, 13:38
 
Fecha de Ingreso: diciembre-2003
Mensajes: 212
Antigüedad: 20 años, 4 meses
Puntos: 0
problemas al cargar opcion select con valores de base de datos

Hola, tengo tres combos que llenan pais de la una consulta a la base de datos, y si es vzla, activa el combo de estados y lo llena tambien de valores de la base de datos. Al seleccionar estado llena el combo de cuidades. Ahora estoy haciendo la pagina de modificar los datos del usuario donde debe cargarme por defecto (selected) loq ue se guardo en la base de datos, pero no hallo como invocar a la funcion comboencadenado1 que me carga los estados, si el usuario no ha realizado ningun evento onchange(que era como lo llamba antes). Antes la llamba asi.

<select name="pais" class="tex_02" id="pais" onChange="comboencadenado1()">
y ahora nose se me ocurre que de laguna manera le pase los valores leidos de base de datos como argumento , asi
<select name="pais" class="tex_02" id="pais" onChange="comboencadenado1('211', '2')">
pero no estoy clara como puedo hacerlo?? Espero me alla explicado bien y me puedan dar una idea como cargar estos combos tan pronto el usuario entre a la pagina de modificar datos??

Esta es mi funcion que necesito llamar:

function comboencadenado1(paisF, estadoF) {
var opcion;
opcion=document.registro.pais[document.registro.pais.selectedIndex].value;
if(opcion!=0){
if(paisF == '211'){ //fin Pais DB
if(opcion == '211'){ //es Vzla
sel_listas=eval("listas_" + opcion);
num_listas=sel_listas.length/2;
document.registro.estado.length=num_listas;
for(i=0;i<num_listas;i++){
//alert("estadoF "+estadoF);
if(estadoF == sel_listas[i*2+1] ){
document.registro.estado.options[i].value=sel_listas[i*2+1];
document.registro.estado.options[i].text=sel_listas[i*2];
document.registro.estado.options[i].selected=true;
}else{
document.registro.estado.options[i].value=sel_listas[i*2+1];
document.registro.estado.options[i].text=sel_listas[i*2];
}
ir=sel_listas[i];
}//fin for
document.registro.otroEstado.disabled=true;
document.registro.otraCiudad.disabled=true;
document.registro.otroEstado.value="";
document.registro.otraCiudad.value="";
agregarOpcion(document.registro.ciudad, 0,"Seleccione","");
}else{
while (document.registro.estado.length) document.registro.estado.remove(0);
while (document.registro.ciudad.length) document.registro.ciudad.remove(0);
agregarOpcion(document.registro.estado, 0, "Otro", 0);
agregarOpcion(document.registro.ciudad, 0, "Otra", 0);
//habilita campos de texto de otro estado y ciudad
document.registro.otroEstado.disabled=false;
document.registro.otraCiudad.disabled=false;
document.registro.otroEstado.value="";
document.registro.otraCiudad.value="";
}//fin if es Vzla
}//fin pais DB
}else{
document.registro.estado.length=1;
document.registro.estado.options[0].value="-- --";
document.registro.estado.options[0].text="-- --";

document.registro.ciudad.length=1;
document.registro.ciudad.options[0].value="-- --";
document.registro.ciudad.options[0].text="-- --";

document.registro.estado.options[0].selected=true;
document.registro.ciudad.options[0].selected=true;
}
//antes estaba aqui
//document.registro.estado.options[0].selected=true;
//document.registro.ciudad.options[0].selected=true;

}
  #2 (permalink)  
Antiguo 25/10/2005, 15:34
Avatar de programeitor  
Fecha de Ingreso: febrero-2005
Mensajes: 994
Antigüedad: 19 años, 2 meses
Puntos: 9
Esto puede que te sirva:

window.onload=function(){comboencadenado1('211', '2')}
colocalo al principio del script

o

<body onload="comboencadenado1('211', '2')">
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:16.