Foros del Web » Programando para Internet » Javascript »

Actualizar caja de texto desde select y viceversa

Estas en el tema de Actualizar caja de texto desde select y viceversa en el foro de Javascript en Foros del Web. Buenas a todos. En las FAQS he encontrado una parte del código que necesito, en concreto en el apartado: ¿ Cómo puedo extraer de un ...
  #1 (permalink)  
Antiguo 29/06/2009, 15:55
Avatar de chemita59  
Fecha de Ingreso: agosto-2005
Ubicación: Madrid
Mensajes: 107
Antigüedad: 18 años, 8 meses
Puntos: 0
Actualizar caja de texto desde select y viceversa

Buenas a todos.
En las FAQS he encontrado una parte del código que necesito, en concreto en el apartado:

¿ Cómo puedo extraer de un elemento select el índice o el valor o el nombre desplegado en la opción seleccionada ?.

El código es el siguiente:

<html>
<head>
<script language="JavaScript">
function cambia(){
with (document.frm){
indice.value = String(selector.selectedIndex);
opcion.value = selector.options[selector.selectedIndex].text;
valor.value = selector.options[selector.selectedIndex].value;
}
}
</script>
</head>
<body>
<form name="frm">
Indice:<input type="text" name="indice"><br>
Opcion:<input type="text" name="opcion"><br>
Valor: <input type="text" name="valor"><br>
Seleccione:<select name="selector" onchange="cambia()">
<option>Seleccione un valor</option>
<option value="1">Uno</option>
<option value="2">Dos</option>
<option value="3">Tres</option>
</select>
</form>
</body>
</html>

Ahora quiero ir un poco mas alla….. SI ES POSIBLE….

¿Como puedo hacer para que al introducir un dato valido en la caja de texto VALOR se actualicen el resto de elementos del formulario, es decir el SELECT y las cajas de texto INDICE Y OPCION ?.

Gracias por adelantado….
  #2 (permalink)  
Antiguo 29/06/2009, 16:09
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Actualizar caja de texto desde select y viceversa

primero necesitas registrar un evento de teclado al INPUT valor. en este evento haras lo siguiente:
- compara el valor introducido con los valores de cada option para determinar si es valido
- si encuentra un pareo, entonces asignas el valor de indice a la propiedad selectedIndex del SELECT. y por ultimo llama la funcion cambia para que el cambio ocurra en todos los campos.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 30/06/2009, 01:07
Avatar de chemita59  
Fecha de Ingreso: agosto-2005
Ubicación: Madrid
Mensajes: 107
Antigüedad: 18 años, 8 meses
Puntos: 0
Respuesta: Actualizar caja de texto desde select y viceversa

Vamos a ver.....

Partiendo del siguiente codigo, consigo presentar en el combo el valor del "INDICE" que introduzco.

No es esto lo que quiero.

Lo que pretendo es que si el usuario conoce el valor asociado al texto que presenta el combo(NO EL INDICE), lo introduzca en el INPUT <clave>, que ha de ser igual a ="<%=(Recordset1.Fields.Item("CODCAM").Value)%> " y automaticamente se actualice el combo.

Es justamente lo contrario que hago en el script con el que he abierto el hilo.



<html>
<head>
<title>Untitled Document</title>
<script language="javascript">
function setCombo(valor)
{
document.getElementById("causas").selectedIndex = valor;
}
</script>
</head>

<body>
<form name="formulario">
<input type="text" name="clave" onKeyUp="setCombo(this.value)">
<select name="combo" id="causas" size="1">
<option value="99">Elegir ....</option>
<%
While (NOT Recordset1.EOF)
%>
<option value="<%=(Recordset1.Fields.Item("CODCAM").Value) %>"><%=(Recordset1.Fields.Item("LITCAM").Value)%> </option>
<%
Recordset1.MoveNext()
Wend
If (Recordset1.CursorType > 0) Then
Recordset1.MoveFirst
Else
Recordset1.Requery
End If
%>
</select>
</form>
</body>
</html>



Saludos.

Última edición por chemita59; 30/06/2009 a las 02:17
  #4 (permalink)  
Antiguo 30/06/2009, 09:44
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Actualizar caja de texto desde select y viceversa

no he visto tu ultimo codigo porque contiene ASP o JSP y no entiendo nada. de todos modos, aqui un ejemplo usando tu codigo inicial.
Código:
<html>
<head>
<script language="JavaScript">
function cambia(){
with (document.frm){
indice.value = String(selector.selectedIndex);
opcion.value = selector.options[selector.selectedIndex].text;
valor.value = selector.options[selector.selectedIndex].value;
}
}
</script>
</head>
<body>
<form name="frm">
Indice:<input type="text" name="indice"><br>
Opcion:<input type="text" name="opcion"><br>
Valor: <input type="text" name="valor" onkeyup="
var options = this.form.selector.options;
for(var i = 0; i < options.length; i++){
var match = options[i].value == this.value;
if(match)break;
}
this.form.selector.selectedIndex = i;
cambia();
"><br>
Seleccione:<select name="selector" onchange="cambia()">
<option>Seleccione un valor</option>
<option value="1">Uno</option>
<option value="2">Dos</option>
<option value="3">Tres</option>
</select>
</form>
</body>
</html>
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #5 (permalink)  
Antiguo 30/06/2009, 14:29
Avatar de chemita59  
Fecha de Ingreso: agosto-2005
Ubicación: Madrid
Mensajes: 107
Antigüedad: 18 años, 8 meses
Puntos: 0
Respuesta: Actualizar caja de texto desde select y viceversa

Muchas gracias....

Por la mañana lo pruebo... ahora tengo problemas con el ordenador....

Te comento...

Última edición por chemita59; 30/06/2009 a las 14:37
  #6 (permalink)  
Antiguo 30/06/2009, 14:30
Avatar de chemita59  
Fecha de Ingreso: agosto-2005
Ubicación: Madrid
Mensajes: 107
Antigüedad: 18 años, 8 meses
Puntos: 0
Respuesta: Actualizar caja de texto desde select y viceversa

Muy agradecido por tu respuesta y el codigo.[/QUOTE]

Última edición por chemita59; 30/06/2009 a las 14:36
  #7 (permalink)  
Antiguo 01/07/2009, 03:12
Avatar de chemita59  
Fecha de Ingreso: agosto-2005
Ubicación: Madrid
Mensajes: 107
Antigüedad: 18 años, 8 meses
Puntos: 0
Respuesta: Actualizar caja de texto desde select y viceversa

Todo correcto....
Funciona perfectamente.

De nuevo muchas gracias...
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:35.