Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] llenar input dependiente de select con javascript

Estas en el tema de llenar input dependiente de select con javascript en el foro de Javascript en Foros del Web. Hola, tengo un problema con un combo que me trae datos desde la bd, quiero que al seleccionar una opción me devuelva un dato en ...
  #1 (permalink)  
Antiguo 17/03/2016, 00:59
 
Fecha de Ingreso: julio-2013
Ubicación: Sonora
Mensajes: 5
Antigüedad: 6 años, 1 mes
Puntos: 0
llenar input dependiente de select con javascript

Hola, tengo un problema con un combo que me trae datos desde la bd, quiero que al seleccionar una opción me devuelva un dato en un input, he leído que es posible hacerlo con javascript pero la verdad no estoy muy familiarizada con js.

Mas claro quiero que el campo "costosemanal" obtenido en mi consulta me lo devuelva en un input.

Código PHP:
<p><label>Selecciona Curso</label>
                    <select class="select"  name="Curso" style="width:625px" onchange='estafuncion(this);'>
                            <?php 
                            $consulta 
$conexion -> query("select curso,nombrecurso,hora_comienza,hora_fin,dias,status,costosemanal,duracion_semanas from cur_inst join curso on cur_inst.curso=curso.id_curso where status = 'Activo'") or die("ha fallado la conexion");
                            echo 
"<option>Seleccione una opcion</option>";
                            while(
$registro=$consulta ->fetch_assoc()){
                                echo 
"<option value = '".$registro['curso']."'>";
                                echo 
$registro['nombrecurso'].'&nbsp;De&nbsp;'.$registro['hora_comienza'].'&nbsp;A&nbsp;'.$registro['hora_fin'].'&nbsp;los dias&nbsp;'.$registro['dias'];
                            }
                            echo 
"</option>";        
                        echo 
"</select></p>";
                echo 
"</ br>"
                
?>
                <p><label>Costo semanal del Curso</label>
                    <input type="text" id="idInput" name="idInput" class="input" value="<?php $registro['costosemanal']; ?>" />
                </p>
Con este codigo js obtengo el id de la opción seleccionada del combo pero no quiero el valor, lo que quiero es el elemento o texto.

Código Javascript:
Ver original
  1. function estafuncion(inputSelect){
  2.                 var valor = inputSelect.value;
  3.                 document.getElementById("idInput").value=valor;
  4.             }
  5.             </script>

----
Lo que quiero es que al seleccionar una opcion del combo,
<option value="1">opcion1</option>
<option value="2">opcion2</option>

en el input me muestre "opcion1" u "opcion2" dependiendo de lo que se haya elegido
<input type="text">
-------


Espero que puedan ayudarme ya que tengo todo el dia dándole vueltas a esto, se los agradeceria mucho.
  #2 (permalink)  
Antiguo 17/03/2016, 01:32
 
Fecha de Ingreso: junio-2004
Mensajes: 620
Antigüedad: 15 años, 3 meses
Puntos: 25
Respuesta: llenar input dependiente de select con javascript

Los elementos option tienen varias propiedades. A ti te interesan:
  • value: que se refiere al campo que viajará en el formulario
  • text: que se refiere a lo que se muestra en cada elemento

Si lo que quieres es el text usa var valor = inputSelect.text;

Código Javascript:
Ver original
  1. function estafuncion(inputSelect){
  2.     var valor = inputSelect.text;
  3.     document.getElementById("idInput").value=valor;
  4. }

Prueba a ver si así te funciona.

Un saludo
__________________
eContento
- Mis artículos y tutoriales
- Mis jsfiddles
  #3 (permalink)  
Antiguo 17/03/2016, 10:38
 
Fecha de Ingreso: julio-2013
Ubicación: Sonora
Mensajes: 5
Antigüedad: 6 años, 1 mes
Puntos: 0
Respuesta: llenar input dependiente de select con javascript

Gracias por contestar, pero ya he intendatdo con text y con tu codigo me devuelve en el input:
"undefined"
hay alguna otra manera?
  #4 (permalink)  
Antiguo 17/03/2016, 16:28
 
Fecha de Ingreso: junio-2004
Mensajes: 620
Antigüedad: 15 años, 3 meses
Puntos: 25
Respuesta: llenar input dependiente de select con javascript

Vale,
Es que el "this" se refiere al objeto "select".
Hay que acceder al array de opciones del objeto select, con el indice de la opción seleccionada, y obtener su value (o su text)

Sería algo así:
Código Javascript:
Ver original
  1. function estafuncion(inputSelect){
  2.     var indice = inputSelect.selectedIndex;
  3.     var selectedOption = inputSelect.options[indice]
  4.     document.getElementById("idInput").value=selectedOption.text;
  5. }

O en una sóla linea;

Código Javascript:
Ver original
  1. function estafuncion(inputSelect){
  2.     document.getElementById("idInput").value = inputSelect.options[inputSelect.selectedIndex].text;;
  3. }

A ver si ahora, sí que sí.


Un saludo
__________________
eContento
- Mis artículos y tutoriales
- Mis jsfiddles
  #5 (permalink)  
Antiguo 17/03/2016, 17:22
 
Fecha de Ingreso: julio-2013
Ubicación: Sonora
Mensajes: 5
Antigüedad: 6 años, 1 mes
Puntos: 0
Respuesta: llenar input dependiente de select con javascript

Gracias por tu tiempo y paciencia, funciono...
muchas gracias!
:)

Etiquetas: dependiente, funcion, input, js, php, select, valor
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 15:48.