Foros del Web » Programando para Internet » Javascript »

como crear un select dinamico??

Estas en el tema de como crear un select dinamico?? en el foro de Javascript en Foros del Web. Hola, tengo un problema, estoy aprendiendo hace poco a usar javascript y navegando por otras paginas ( http://www.desarrolloweb.com/articulos/1490.php ) encontre la forma de poder modificar ...
  #1 (permalink)  
Antiguo 15/09/2008, 11:00
 
Fecha de Ingreso: septiembre-2008
Mensajes: 5
Antigüedad: 15 años, 7 meses
Puntos: 0
Pregunta como crear un select dinamico??

Hola, tengo un problema, estoy aprendiendo hace poco a usar javascript y navegando por otras paginas ( http://www.desarrolloweb.com/articulos/1490.php ) encontre la forma de poder modificar las opciones de un select al seleccionar la opcion de otro select... pero lo que necesito es que las opciones de ambos select sean obtenidas de mi base de datos. La primera lista desplegable muestra los nombres de los repuestos y la segunda muestra los modelos que hay para cada repuesto.
El codigo resumido es:

Código PHP:
<?php 
require_once('conexion.php');
mysql_select_db($base$conexion);
$consulta "select * from repuestos";
$resultados mysql_query($consulta$conexion) or die(mysql_error());
$filas mysql_fetch_assoc($resultados);
?>
<html>
<body>

 <form action="orden.php" method="post" name="formulario">     

<?
//$codigoSelect= este valor no se como obtenerlo....
$consultaScritp="SELECT * FROM repuestos where repuestos.codigoRepuesto = '$codigoSelect'";
$resultadosScritp mysql_query($consultaScritp$conexion) or die(mysql_error());
$numero mysql_num_rows($resultadosScritp);
$filasScritp mysql_fetch_assoc($resultadosScritp);
$modelos="";
do{
$modelos=$modelos.$filasScritp['modeloRepuesto'].";";}
while(
$filasScritpmysql_fetch_assoc($resultadosScritp));
?>
       
Repuesto
                 <select class="input" name="repuesto" onChange="llenar(this.form,'<? echo $modelos;?>')">
                <option value=''>--</option>
<?
do{
echo 
"<option value='".$filas['codigoRepuesto']."'>".$filas['nombreRepuesto']."</option>";
}
while(
$filasmysql_fetch_assoc($resultados));
?>
              </select>
<br>
Modelo
              <select class="input" name="modelo">
              </select>
</form>
</body>
</html>
Y el script que recibe la lista con los modelos al seleccionar el select repuestos es:

Código:
<script language="javascript">

 function llenar(form,modelos)
{
var modelos1 = new Array();
var modelos2= modelos;   
var listaModelos = modelos2.split(";"); 
var selec = form.repuesto.options;
var combo = form.modelo.options;
combo.length = null;

    if (selec.selectedIndex!="" && selec.selectedIndex >0)
    {
	for (var i = 0; i != listaModelos.length; i++) { 
	var selectModelos= new Option(listaModelos[i],"","","");
	combo[i]=selectModelos;	     
	   }			
    }   
}
</script>
Pero no puedo enviar la lista para llenar el segundo select ya que me falta el valor de $codigoSelect... una forma creo q es usando lo de campos ocultos, enviando el valor del select (selec.selectedIndex), pero cuando hace submit la primera opcion no aparece seleccionada.
Como lo puedo hacer???
  #2 (permalink)  
Antiguo 15/09/2008, 12:45
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 16 años
Puntos: 43
Respuesta: como crear un select dinamico??

Usando ajax compañero, si necesitas hacer consultas a la DB no lo podras hacer solo con javascript, necesitas ajax.
Con el onchange del primer select llamas a una funcion que crea el objeto ajax y envia los datos por post o get a una pagina php, la cual hara el select de los datos e imprime el resultado en un contenedor que le indiques.
En el foro de ajax veras muchos ejemplos de como usarlo.

Saludos
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #3 (permalink)  
Antiguo 15/09/2008, 21:14
 
Fecha de Ingreso: septiembre-2008
Mensajes: 5
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: como crear un select dinamico??

Gracias... estoy leyendo un manual de Ajax para ver si me resulta.
  #4 (permalink)  
Antiguo 11/11/2008, 08:25
Avatar de eall  
Fecha de Ingreso: noviembre-2008
Ubicación: Concepcion
Mensajes: 127
Antigüedad: 15 años, 6 meses
Puntos: 8
De acuerdo Respuesta: como crear un select dinamico??

Una forma muy sencilla de llenar select es usar xajax o jQuery.
En mi blog hay articulos para ambos casos.
dale una miradita.

Código:
http://prodev.cl/2008/11/como-crear-combo-box-o-select-dinamico-con-jquery/
Código:
http://prodev.cl/2008/10/como-crear-combo-box-dinamico-con-xajax/
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 22:22.