Foros del Web » Programando para Internet » Javascript »

cambiar valores de los "text" al cambiar "select"

Estas en el tema de cambiar valores de los "text" al cambiar "select" en el foro de Javascript en Foros del Web. Hola a todos tengo una tabla en mysql de productos.. PRODUCTOS: id - nombre - precio - peso - productor 1 - A - 10 ...
  #1 (permalink)  
Antiguo 12/07/2009, 10:29
 
Fecha de Ingreso: diciembre-2008
Mensajes: 268
Antigüedad: 15 años, 5 meses
Puntos: 0
Pregunta cambiar valores de los "text" al cambiar "select"

Hola a todos

tengo una tabla en mysql de productos..
PRODUCTOS:

id - nombre - precio - peso - productor
1 - A - 10 - 234 - XXX
2 - B - 23 - 123 - YYY
3 - C - 55 - 54 - ZZZ

lo que quiero hacer es un form en donde hay un select que me lista el nombre de los productos almacenados en mi BD (hasta aqui ningun problema),y que de hecho lo hago asi :

Código PHP:
<select name="nom_productos" id="nom_productos" >  
<?php while ($reg=mysql_fetch_array($registros))   
echo 
"<option value=\"$reg[nombre]\">$reg[nombre]</option>";   
?>  
</select>
lo que me gustaria hacer ahora es que justamente debajo de ese select, colocar 3 campos de texto (precio , peso y productor), asociados a los campos de mi BD.. y lo que quiero.. es que al seleccionar 1 producto de mi select (por ej: "B"), automaticamente me muestre los valores de los campos asociados...

"23" en el campo precio
"123" en peso
"yyy" en productor

espero me puedan ayudar o decirme como puedo hacer esto.... ojo... que no quiero seleccionar y de ahi un boton que me ejecute algun php.. quiero que el cambio de los campos de texto sea automatico al seleccionar una de las variables.. y si me arrepiento y selecciono otro valor, vuelva a cambiar los valores asociados.. y asi.......

GRACIAS A TODOS !

me acaban de recomendar que esto se hace con Javascript, pero no se NADA de este lenguaje, por lo que algun ejemplo simple que me puedan dar me seria de gran ayuda. gracias
  #2 (permalink)  
Antiguo 12/07/2009, 12:06
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: cambiar valores de los "text" al cambiar "select"

Hola

Con javascript

+ En el valor de las opciones añadir el precio, precio y producto separados por giones
+ Con el evento onchage mandar a llamar una función que recoja el valor de la opción seleccionada. Hacer un split y después con innerText insertar cada valor en el campo correspondiente

Yo personalmente lo haría con AJAX. Que puedo decir, se que es otro lenguaje pero me gusta

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 12/07/2009, 20:19
 
Fecha de Ingreso: diciembre-2008
Mensajes: 268
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: cambiar valores de los "text" al cambiar "select"

Gracias Adler... pero soy ignorante en AJAX o JAVA.. estoy recien avanzando en php y mysql.. por lo que la verdad agradeceria me dijeran donde encontrar algun script hecho de lo que quiero hacer.. algun ejemplo simple sobre el cual ir avanzando, porque lo que me dices de...."Con el evento onchage mandar a llamar una función que recoja el valor de la opción seleccionada. Hacer un split y después con innerText..." no entendi nada.. jeje.. gracias y espero me guien
  #4 (permalink)  
Antiguo 13/07/2009, 06:33
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: cambiar valores de los "text" al cambiar "select"

Hola

Sería algo así

Código javascript:
Ver original
  1. function funcion(datos) {
  2. valores = datos.split("-");
  3. document.getElementById("peso").innerText = valores[0];
  4. document.getElementById("precio").innerText = valores[1];
  5. document.getElementById("producto").innerText = valores[2];
  6. }

Cita:
<select name="nom_productos" id="nom_productos" onchage="funcion(document.getElementById(this.id). options[document.getElementById(this.id).selectedIndex].value);">
<?php while ($reg=mysql_fetch_array($registros))
echo "<option value=\"$reg[peso]"-"$reg[precio]"-"$reg[producto]\">$reg[nombre]</option>";
?>
</select>
Nota._ Lo que está en rojo no se si es correcto, yo vengo de ASP

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
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 07:07.