Foros del Web » Programando para Internet » Javascript »

cargar distintos input en base a la seleccion de un combobox

Estas en el tema de cargar distintos input en base a la seleccion de un combobox en el foro de Javascript en Foros del Web. Buenas tardes gente, estoy desarrollando un sistema en php, y tengo 2 situaciones diferentes en las que necesito ayuda, pero esas situaciones parten de algo ...
  #1 (permalink)  
Antiguo 12/01/2015, 13:57
 
Fecha de Ingreso: abril-2011
Mensajes: 171
Antigüedad: 13 años
Puntos: 1
cargar distintos input en base a la seleccion de un combobox

Buenas tardes gente, estoy desarrollando un sistema en php, y tengo 2 situaciones diferentes en las que necesito ayuda, pero esas situaciones parten de algo en común, un combobox, o select...

1°: hago una consulta de mysql en donde selecciono id, transporte, patente, dirección, localidad y cuit de unos transportes y cargo un select con las patentes que me devuelve esa consulta, ahora bien, al seleccionar una de esas patentes, debo cargar unos campos de texto con los demás datos que me devolvió la consulta anterior.

2° (un poco mas complejo): un select cargado con productos, al seleccionar uno de ellos debe suceder una secuencia de acciones:
a) el select de proveedores se debe cargar solo con los que nos proveen de ese mismo producto.
b) el select de lotes se debe cargar con los lotes del proveedor luego elegido.
c) el select de origen se debe cargar solo con los orígenes posibles de ese producto.
d) el select de destino se debe cargar solo con los orígenes posibles de ese producto.

Disculpen si es mucho, pero me parece que la solucion puede ser parecida! desde ya muchas gracias!

Última edición por axelb; 12/01/2015 a las 14:17
  #2 (permalink)  
Antiguo 12/01/2015, 14:33
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: cargar distintos input en base a la seleccion de un combobox

La carga dinámica tendrías que hacerla con Ajax.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #3 (permalink)  
Antiguo 12/01/2015, 14:38
 
Fecha de Ingreso: abril-2011
Mensajes: 171
Antigüedad: 13 años
Puntos: 1
Respuesta: cargar distintos input en base a la seleccion de un combobox

Eso mismo he leido, pero la verdad es que no dispongo del tiempo necesario para estudiarlo. Apenas manejo muy poco de javascript! Podrán ayudarme por favor?? Muchas gracias
  #4 (permalink)  
Antiguo 12/01/2015, 14:41
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: cargar distintos input en base a la seleccion de un combobox

En el enlace que te di, hay un ejemplo de carga dinámica de combos con Ajax. Es lo máximo que vas a poder obtener gratis, porque dudo mucho que alguien quiera hacer tu trabajo sin un beneficio a cambio.

Te aconsejo ver la forma de generarte el tiempo necesario para que aprendas a hacerlo, así más adelante podrás hacerlo sin ayuda de nadie.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #5 (permalink)  
Antiguo 12/01/2015, 15:00
 
Fecha de Ingreso: abril-2011
Mensajes: 171
Antigüedad: 13 años
Puntos: 1
Respuesta: cargar distintos input en base a la seleccion de un combobox

Estoy de acuerdo con lo que dices! Vamos a intentar con esto primero, para salirnos del problema! Gracias
  #6 (permalink)  
Antiguo 15/01/2015, 19:29
 
Fecha de Ingreso: abril-2011
Mensajes: 171
Antigüedad: 13 años
Puntos: 1
Respuesta: cargar distintos input en base a la seleccion de un combobox

buenas noches, tengo el siguiente codigo:

Código Javascript:
Ver original
  1. function getCombo2(id_combo1){ //variable que espera la funcion
  2.     var xmlhttp;
  3.     if (window.XMLHttpRequest){// codigo for IE7+, Firefox, Chrome, Opera, Safari
  4.         xmlhttp=new XMLHttpRequest();
  5.     }else{// codigo for IE6, IE5
  6.         xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  7.     }
  8.     //funcion que se llama cada vez que cambia la propiedad readyState
  9.     xmlhttp.onreadystatechange=function(){
  10.         //readyState 4: peticion finalizada y respuesta lista
  11.         //status 200: OK
  12.         if (xmlhttp.readyState===4 && xmlhttp.status===200){
  13.             //Pasar la respuesta html a div_combo2
  14.             document.getElementById("div_combo").innerHTML=xmlhttp.responseText;
  15.             document.getElementById("div_combo2").innerHTML=xmlhttp.responseText;
  16.             document.getElementById("div_combo3").innerHTML=xmlhttp.responseText;
  17.         }
  18.     };
  19.     /* open(metodo, url, asincronico)
  20.     * metodo: post o get
  21.     * url: localizacion del archivo en el servidor
  22.     * asincronico: comunicacion asincronica true o false.*/
  23.     xmlhttp.open("POST","get_combo2.php",true);//establece el header para la respuesta
  24.     xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");//enviamos las variables al archivo get_combo2.php
  25.     xmlhttp.send("id_combo1=" + id_combo1);        
  26. }

en conjunto con:

Código PHP:
Ver original
  1. <?php
  2. include_once("localhost//datos_base_de_datos.php");
  3. $conectar=mysqli_connect("$hosting","$usuario","$pass");
  4. mysqli_select_db($conectar,"$base");
  5. //recibimos la variable enviada desde ajax
  6. $id_combo1=$_POST["id_combo1"];
  7. //hacemos el query para obtener los datos segun la variable obtenida
  8. $sql="select chofer,patente2,tara from tickets where patente='$id_combo1'";
  9. //ejecutamos el query
  10. $query= mysqli_query($conectar, $sql);
  11. $a=mysqli_fetch_row($query);
  12. mysqli_close($conectar);
  13. ?>
  14. <!--Este es lo verdadero que mostramos con los datos cargados-->
  15. <input type="text" name="chofer" value="<?php echo"$a[0]"; ?>"/>
  16. <input type="text" name="tara" value="<?php echo"$a[2]"; ?>"/>
  17. <input type="text" name="chapa2" value="<?php echo"$a[1]"; ?>"/>

funciona de la siguiente manera, al cambiar el valor de un select, se ejecuta la funcion, esta envia el valor del select y con ese valor ejecuto un consulta, y los resultados de la misma las muestro en un campo de texto, el problema es que son 3 campos que deben ir en 3 lugares distintos dentro de una tabla, pero en cada uno de esos lugares en donde debe ir uno, me aparecen los 3, osea que tengo 9 campos de texto, cada uno se repite 2 veces, como puedo solucionar mi problema?? Tengo muy muy poco conocimiento de javascritp! por favor ayudenme! gracias

Etiquetas: cargas, combobox, distintos, input, php, seleccion, 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 06:35.