Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Select dinamicos, region provincia, comuna

Estas en el tema de Select dinamicos, region provincia, comuna en el foro de Frameworks JS en Foros del Web. Hola Comunidad, hace un rato ya que no escribo pero siempre siguiendo este foro y sacando sus ejemplillos..jejje. Tengo un problema y espero me puedan ...
  #1 (permalink)  
Antiguo 04/10/2010, 07:53
principe_prais
Invitado
 
Mensajes: n/a
Puntos:
Exclamación Select dinamicos, region provincia, comuna

Hola Comunidad, hace un rato ya que no escribo pero siempre siguiendo este foro y sacando sus ejemplillos..jejje.
Tengo un problema y espero me puedan orientar, les cuento:

tengo un formulario en el cual tengo unos select dinamicos,el cual se puede elegir la region, luego la provincia y luego la comuna, hasta ahi todo bien, el problema es que cuando elijo todo y por algun motivo x, el usuario quisiera cambiar estos select, al ir a region, y cambiarlos, solo se refresca la provincia y una vez elegida la provincia recien se carga las comunas.. mi idea es que cuando cambie la region el usuario por x motivo, automaticamente provincia se carge(eso ya lo hace), y comuna quedara en blanco osea esperando la seleccion de provincia para cargarse, y no quedara cargado el select con la eleccion anterior (Quisiera como hacer un refresh, a los dos select provincia,comuna, cuando vuelven a elejir una region)les dejo el codigo:




function CargaProvincia(){

document.FormData.id_comuna.value="";// esta linea me re-establece las comunas, cuando vuelve a elejir una region, pero solo el titulo, ya que cuando lo selecciono no debiera tener nada y tiene las comunas cargadas anteriormente.

divResultado = document.getElementById('divprovincia');
id_region = document.getElementById('id_region').value;
ajax = objetoAjax();
ajax.open("POST", "KG_Dynamic_LD0.php", true);
ajax.onreadystatechange = function(){
if (ajax.readyState==4){
divResultado.innerHTML = ajax.responseText
}
}
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
ajax.send("id_region="+id_region)
}

function CargaComuna(){
divResultado = document.getElementById('divcomuna');
id_provincia = document.getElementById('id_provincia').value;
ajax = objetoAjax();
ajax.open("POST", "KG_Dynamic_LD1.php", true);
ajax.onreadystatechange = function(){
if (ajax.readyState==4){
divResultado.innerHTML = ajax.responseText
}
}
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
ajax.send("id_provincia="+id_provincia)
}


Cualquier orientacion lo agradesco mucho, ya que soy novatillo en Ajax....
  #2 (permalink)  
Antiguo 04/10/2010, 12:43
Avatar de egepe  
Fecha de Ingreso: diciembre-2009
Mensajes: 310
Antigüedad: 14 años, 4 meses
Puntos: 7
Respuesta: Select dinamicos, region provincia, comuna

No sé como tienes los <select> pero el primero region deberías tener el evento onchange para que puedas hacer eso; ejemplo onchange="CargaProvincia()"

Pero no le pasa el dato que cambia?

Saludos
  #3 (permalink)  
Antiguo 05/10/2010, 07:42
principe_prais
Invitado
 
Mensajes: n/a
Puntos:
Exclamación Respuesta: Select dinamicos, region provincia, comuna

Muchas Gracias por responder Egepe, y si efectivamente tengo asi como tu dices los select te pongo el codigo:

************** REGION ****************************************
// AKA SOLO DESCARGO LAS REGIONES EN EL PRIMER SELECT

<select name="id_region" id="id_region" onChange="CargaProvincia()">

<option value="" selected="selected">[Seleccione]</option>

<? $SQLQuery=mysql_query("select ID_REGION,DE_DESCRIPCION from region order by DE_DESCRIPCION asc",$cn);

while ($AccesaReg=mysql_fetch_array($SQLQuery))
{ ?>
<option value="<? echo $AccesaReg['ID_REGION']?>">
<? echo htmlentities($AccesaReg['DE_DESCRIPCION'])?></option>
<? } ?>
</select>

************************* PROVINCIA ****************************

<div id="divprovincia" align="left">
<select name="id_provincia" id="id_provincia" onChange="CargaComuna()">
<option value="" selected="selected">[Seleccione]</option>
</select>
</div>
***************************** Y lo mismo con las comunas ************

yo creo que la forma debe estar en las funciones y no en los select, tal vez, darle una intruccion a la funcion de provincia para que cuando vuelva a inicializar tambien lo haga la comuna.



Lo que si recuerda, que los combo-box, me funcionan bien, es solo que cuando una vez ya elejida las 3 opciones(region,provincia,comuna), si deseo cambiar, la region, automaticamente la provincia y la comuna devieran volver a inicializarse en [Seleccione], y solo lo hace la provincia y no la comuna, necesito que la comuna tambien haga lo mismo que la provincia........

Estare atentoa los comentarios.-

Saludos Foreros.-
------------------------------
  #4 (permalink)  
Antiguo 05/10/2010, 10:18
Avatar de egepe  
Fecha de Ingreso: diciembre-2009
Mensajes: 310
Antigüedad: 14 años, 4 meses
Puntos: 7
Respuesta: Select dinamicos, region provincia, comuna

Claro tienes que verificar el php q he te hace el select interno una vez que dispare el onchange, ahora bien un error muy típico es creer que es "evidente" que cambien el valor. Te explico

Tu dice que tienes tres niveles region, provincia, comuna

y el <select> de region tienes onchange, pero el hace el cambio si solo si realmente cambias el valor...

Por lo que veo tienes una funcion (js) para cada caso prinvincia o comuna hay que verficar los id o tag con los que en (js) manipulas el dato porque creo que q ahí más allá de lo que te dije primero es que se encuentra el problema

trata de colocar un alert con los parametro que pasas, antes de que hagas el "open" para ejecutar el php.

Y cualquier cosa me avisas

Saludos
  #5 (permalink)  
Antiguo 05/10/2010, 11:52
principe_prais
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Select dinamicos, region provincia, comuna

Muchas Gracias por tu Orientacion, ya lo resolvi, de forma muy muy eficiente, de hecho mejor de la que esperaba, simplemente empeze a jugar con las funciones Ajax, en donde se almacenan los resultados de cada id escogido, les pongo el codigo a los Foreros que tengan un problema similar:

Cambien la funcion de provincia asi:
------------------------------------------------------

function CargaProvincia(){

divResultado = document.getElementById('divprovincia');
divResul = document.getElementById('divcomuna');
id_region = document.getElementById('id_region').value;
ajax = objetoAjax();
ajax.open("POST", "KG_Dynamic_LD0.php", true);
ajax.onreadystatechange = function(){
if (ajax.readyState==4){
divResultado.innerHTML = ajax.responseText
divResul.innerHTML = ajax.responseText.value="";
}
}
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//enviando los valores
ajax.send("id_region="+id_region)
}

************* claro y el Resul es de la funcion comuna ***************************

function CargaComuna(){
divResul = document.getElementById('divcomuna');
id_provincia = document.getElementById('id_provincia').value;
ajax = objetoAjax();
ajax.open("POST", "KG_Dynamic_LD1.php", true);
ajax.onreadystatechange = function(){
if (ajax.readyState==4){
divResul.innerHTML = ajax.responseText
}
}
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
ajax.send("id_provincia="+id_provincia)
}
------------------------------------------------------------------------------------------------------------------

Saludos Foreros.-
-------------------------------------------
  #6 (permalink)  
Antiguo 05/10/2010, 11:57
Avatar de egepe  
Fecha de Ingreso: diciembre-2009
Mensajes: 310
Antigüedad: 14 años, 4 meses
Puntos: 7
Respuesta: Select dinamicos, region provincia, comuna

Perfecto me parace muy bien y gusto en haberte ayudado un poco

saludos
  #7 (permalink)  
Antiguo 16/02/2015, 11:58
 
Fecha de Ingreso: febrero-2015
Ubicación: Chile
Mensajes: 1
Antigüedad: 9 años, 2 meses
Puntos: 0
Respuesta: Select dinamicos, region provincia, comuna

Cita:
Iniciado por principe_prais Ver Mensaje
Hola Comunidad, hace un rato ya que no escribo pero siempre siguiendo este foro y sacando sus ejemplillos..jejje.
Tengo un problema y espero me puedan orientar, les cuento:

tengo un formulario en el cual tengo unos select dinamicos,el cual se puede elegir la region, luego la provincia y luego la comuna, hasta ahi todo bien, el problema es que cuando elijo todo y por algun motivo x, el usuario quisiera cambiar estos select, al ir a region, y cambiarlos, solo se refresca la provincia y una vez elegida la provincia recien se carga las comunas.. mi idea es que cuando cambie la region el usuario por x motivo, automaticamente provincia se carge(eso ya lo hace), y comuna quedara en blanco osea esperando la seleccion de provincia para cargarse, y no quedara cargado el select con la eleccion anterior (Quisiera como hacer un refresh, a los dos select provincia,comuna, cuando vuelven a elejir una region)les dejo el codigo:




function CargaProvincia(){

document.FormData.id_comuna.value="";// esta linea me re-establece las comunas, cuando vuelve a elejir una region, pero solo el titulo, ya que cuando lo selecciono no debiera tener nada y tiene las comunas cargadas anteriormente.

divResultado = document.getElementById('divprovincia');
id_region = document.getElementById('id_region').value;
ajax = objetoAjax();
ajax.open("POST", "KG_Dynamic_LD0.php", true);
ajax.onreadystatechange = function(){
if (ajax.readyState==4){
divResultado.innerHTML = ajax.responseText
}
}
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
ajax.send("id_region="+id_region)
}

function CargaComuna(){
divResultado = document.getElementById('divcomuna');
id_provincia = document.getElementById('id_provincia').value;
ajax = objetoAjax();
ajax.open("POST", "KG_Dynamic_LD1.php", true);
ajax.onreadystatechange = function(){
if (ajax.readyState==4){
divResultado.innerHTML = ajax.responseText
}
}
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
ajax.send("id_provincia="+id_provincia)
}


Cualquier orientacion lo agradesco mucho, ya que soy novatillo en Ajax....
Hola, busco un script que me permita hacer lo mismo que lo de la pregunta pero con la información de las regiones,provincias y comunas de Chile. Si alguien fuera tan amable de compartir algún script. Seria perfecto que este script no utilizara base de datos y todo estuviera en el código...

Etiquetas: ajax, dinamicos, provincia, select
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 14:57.