Foros del Web » Programando para Internet » Javascript »

enviar value de input de un formulario a otro en la misma pagina

Estas en el tema de enviar value de input de un formulario a otro en la misma pagina en el foro de Javascript en Foros del Web. hola. tienen un gran foro!! tengo una duda y me gustaria me pudieran auxiliar. veran tengo dos formularios. Código: <form id="form1"method="post"> <input type="text" name="nombre"> <input ...
  #1 (permalink)  
Antiguo 15/05/2012, 08:11
 
Fecha de Ingreso: mayo-2012
Ubicación: queretaro
Mensajes: 5
Antigüedad: 12 años
Puntos: 1
enviar value de input de un formulario a otro en la misma pagina

hola.
tienen un gran foro!!
tengo una duda y me gustaria me pudieran auxiliar.
veran tengo dos formularios.

Código:
<form id="form1"method="post">
	<input type="text" name="nombre">
	<input type="text" name="favorito">
	<input type="submit" id="boton3"class="boton3"value="Enviar" >
	</form>
	
<form id="form1"method="post">
	<input type="text" name="nombre">
	<input type="text" name="favorito">
	<input type="button" id="boton3"class="boton3"value="Enviar"  onclick="document.form1.nombre.value=document.form1.nombre.value;  document.form1.favorito.value=document.form1.favorito.value;submit();">
	</form>
El id es igual en ambos, necesito que al darle click en el submit del segundo formulario adopte los value de los campos que estan en el primer formulario
habia leido que usando este codigo en el onclick adopta los value de los campos que se encuentran con ese name del formulario origen.
Sin embargo no me esta resultando en la prueba que estoy haciendo.
De momento los puse de tipo text a los segundos input para poder identificar el valor que deberia estar obteniendo de las otras entradas.
saludos y gracias de antemano!!

Última edición por mage_dragon010388; 15/05/2012 a las 08:18
  #2 (permalink)  
Antiguo 15/05/2012, 10:18
Avatar de djaevi  
Fecha de Ingreso: marzo-2007
Ubicación: Moreno, Buenos Aires
Mensajes: 400
Antigüedad: 17 años, 1 mes
Puntos: 47
Respuesta: enviar value de input de un formulario a otro en la misma pagina

Nunca te va a resultar porque un id es unico para un elemento y no podes repetirlo debes ponerle form2 al segundo formulario para que te funcione.

<input type="button" id="boton3"class="boton3"value="Enviar" onclick="document.form2.nombre.value=document.form 1.nombre.value; document.form2.favorito.value=document.form1.favor ito.value;submit();">
  #3 (permalink)  
Antiguo 15/05/2012, 11:02
 
Fecha de Ingreso: mayo-2012
Ubicación: queretaro
Mensajes: 5
Antigüedad: 12 años
Puntos: 1
Respuesta: enviar value de input de un formulario a otro en la misma pagina

gracias por la pronta respuesta djaevi.

cambie el id de los formularios y tambien le agregue el name, sin embargo no cambia el value de los elementos de form2.

Código:
<form id="form1"name="form1"method="post">
	<input type="text" name="nombre"value="prueba1">
	<input type="text" name="favorito"value="prueba2" >
	<input type="submit" id="boton3"class="boton3"value="Enviar" >
	</form>
	
<form id="form2" name="form2"method="post">
	<input type="text" name="nombre">
	<input type="text" name="favorito">
	<input type="button" id="boton3"class="boton3"value="Enviar" onclick="document.form2.nombre.value=document.form 1.nombre.value;document.form2.favorito.value=document.form1.favorito.value;submit();"> 
	</form>
lo estoy intentando con ese codigo.
  #4 (permalink)  
Antiguo 15/05/2012, 11:47
 
Fecha de Ingreso: mayo-2012
Mensajes: 36
Antigüedad: 12 años
Puntos: 12
Respuesta: enviar value de input de un formulario a otro en la misma pagina

Prueba lo siguiente

Código HTML:
Ver original
  1. <form id="form1"name="form1"method="post" onsubmit="return cargar1();">
  2.     <input type="text" id="nombre1" name="nombre" />
  3.     <input type="text" id="favorito1" name="favorito" />
  4.     <input type="submit" id="boton3"class="boton3"value="Enviar" />
  5. </form>
  6.    
  7. <form id="form2" name="form2"method="post" onsubmit="return cargar2();">
  8.     <input type="text" id="nombre2" name="nombre" />
  9.     <input type="text" id="favorito2" name="favorito" />
  10.     <input type="submit" id="boton3" class="boton3"value="Enviar" />
  11. </form>
  12.  
  13. function cargar1() {
  14.     // Solo cargas si el valor esta vacio
  15.     if ( document.getElementById('nombre1').value == "" )
  16.         document.getElementById('nombre1').value = document.getElementById('nombre2').value ;
  17.     if ( document.getElementById('favorito1').value == "" )
  18.         document.getElementById('favorito1').value = document.getElementById('favorito2').value ;
  19.     return true ;
  20. }
  21.  
  22. function cargar2() {
  23.     // Solo cargas si el valor esta vacio
  24.     if ( document.getElementById('nombre2').value == "" )
  25.         document.getElementById('nombre2').value = document.getElementById('nombre1').value ;
  26.     if ( document.getElementById('favorito2').value == "" )
  27.         document.getElementById('favorito2').value = document.getElementById('favorito1').value ;
  28.     return true ;
  29. }

Espero que te haya servido.
__________________
Aprende a cocinar con Anita y descubre mas de 1000 Recetas de Cocina
  #5 (permalink)  
Antiguo 15/05/2012, 12:16
 
Fecha de Ingreso: mayo-2012
Ubicación: queretaro
Mensajes: 5
Antigüedad: 12 años
Puntos: 1
Respuesta: enviar value de input de un formulario a otro en la misma pagina

gracias anavega, bastante util la funcion
con esto podre seguir lo que me falta ;)
ahora si que con la parte de la funcion me ha quedado resuelto el problema :D

Aunque honestamente me ha quedado la duda del saber porque no funcionaba de la otra manera.
ya que si dejaba solo la instruccion submit() la ejecutaba sin problemas, por lo que fuera un problema de que las instrucciones no se encontraban en el bloque <script> no creo que fuera, posiblemente fuera un error de sintaxis mio o que me faltara agregar a otro indice al momento de estar detallando al obtener el value.

saludos!!
y gracias anavega, djaevi.

Etiquetas: formulario, input
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 03:16.