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

Select dependientes

Estas en el tema de Select dependientes en el foro de Frameworks JS en Foros del Web. Hola a todos, necesito hacer dos selects dependientes en un formulario. El primer select mostrará nombre de usuarios de la base de datos. El segundo ...
  #1 (permalink)  
Antiguo 15/11/2010, 03:50
Avatar de aalleexx81  
Fecha de Ingreso: noviembre-2009
Mensajes: 153
Antigüedad: 15 años, 1 mes
Puntos: 0
Pregunta Select dependientes

Hola a todos, necesito hacer dos selects dependientes en un formulario.
  • El primer select mostrará nombre de usuarios de la base de datos.
  • El segundo select mostrará los emails pertenecientes al usuario seleccionado en el primer select.

Tengo los siguientes ficheros con sus respectivos códigos:

index.php

Código PHP:
<?php
include_once ('conexion.php');
conectar();
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>INDEX</title>
<script type="text/javascript" src="cargarEmails.js"></script>  
<script type="text/javascript" src="../jquery.js"></script>
</head>

<body>
<?php $usuarios=mysql_query("SELECT * from t_usuarios");?>

<form id="form" action="" method="post" class="niceform">
<dl><dt>      <label><span class="rojo">*</span> Usuario :</label></dt>
              <dd>   <select name="usuario" id="usuario"  onchange="cargarEmails();" />
                                 <option value="null">Selecciona un usuario</option>
             <?php               while($row=mysql_fetch_assoc($usuarios)){
                    print 
'<option value="'.$row['id_usuario'].'" >'.$row['nom_usuario'].'</option>';
                                            }
?>
                </select>
                 </dd>
</dl>                                                  
                                                           
<dl><dt>      <label><span class="rojo">*</span> Email :</label></dt>
                <dd>     <select name="email" id="email"  />
                                <option value="null">Selecciona un email</option>
                    </select></dd>
</dl>
</form>

</body>
</html>
ajax_emails.php
Código PHP:
<?php
include_once ('conexion.php');
conectar();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<?php
echo "GETusuario vale:  ".$_GET['usuario']."<br>";
$usuario$_GET['usuario'];
$emails=mysql_query("SELECT * FROM t_useremail WHERE id_usuario = '$usuario'");
?>
<?php
while($rowmysql_fetch_assoc($emails)){
        echo 
'<option value="'.$row['id_useremail'].'">'.$row['email'].'</option>';
}
?>

</body>
</html>

cargarEmails.js
Código PHP:
<&#37;@LANGUAGE="JAVASCRIPT" CODEPAGE="1252"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">

function 
cargarEmails(){
    $(
'#email').html('<option selected>Cargando</option>');
           
    var 
idusuario= $('#usuario').val();

    var 
toLoad'ajax_emails.php?usuario='idusuario ;
    $.
post(toLoad,function (responseText){
                           
    $(
'#email').html(responseText);
   
                            });



Creo que el principal problema es que no consigo enviar por get el usuario con lo que no se carga el segundo select con las opciones de email del usuario seleccionado.

Ando un poco perdido y agradecería cualquier tipo de ayuda.
Saludos.

Última edición por aalleexx81; 15/11/2010 a las 04:06
  #2 (permalink)  
Antiguo 16/11/2010, 09:19
Avatar de Facundo_Nahuel  
Fecha de Ingreso: noviembre-2010
Ubicación: Buenos Aires, Argentina
Mensajes: 32
Antigüedad: 14 años, 1 mes
Puntos: 3
Respuesta: Select dependientes

Cita:
Iniciado por aalleexx81 Ver Mensaje
Código PHP:
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="1252"%>
<!
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">

function 
cargarEmails(){
    $(
'#email').html('<option selected>Cargando</option>');
           
    var 
idusuario= $('#usuario').val();

    var 
toLoad'ajax_emails.php?usuario='idusuario ;
    $.
post(toLoad,function (responseText){
                           
    $(
'#email').html(responseText);
   
                            });


Buenas Alex: intenta borrando las primeras 3 lineas del js

Etiquetas: ajax, dependientes, 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 18:16.