Pasar una variable a un campo de un formulario

Hola!
Tengo 2 páginas en HTML, una es una lista de productos con una referencia y la otra es un formulario para solicitar información.
Me gustaría que al picar sobre un producto de la primera página, se abriese la página del formulario y que en el campo de referencia ya apareciese la referencia del producto que he picado.
¿Me puedes ayudar? ¿Se puede hacer con HTML y JavaScript?
Muchísimas gracias.
Álex

1 Respuesta

Respuesta
1
OK, si que se puede hacer. Lo primero, apra enviar variables, utiliza la técnica habitual, es decir, en cada link de cada producto, puedes enviar una variable de esta forma:
paginaproducto.html?variable=Valor&variable2=Valor2 y asi las que necesites. En la página de recepción, o sea, paginaproducto.html, utiliza este código:
cadVariables = location.search.substring(1,location.search.length);
arrVariables = cadVariables.split("&");
for (i=0; i<arrVariables.length; i++) {
arrVariableActual = arrVariables.split("=");
if (isNaN(parseFloat(arrVariableActual[1])))
eval(arrVariableActual[0]+"='"+unescape(arrVariableActual[1])+"';");
else
eval(arrVariableActual[0]+"="+arrVariableActual[1]+";");
}
Que crea cada variable asignándole el valor que le enviaste de la otra página.
Por último, y para ver esa variable por pantalla, escribe un print de javascript y solucionado.
Puedes mirar una explicación más detallada en:
http://www.programacion.com/html/articulo/tw_pasovar1/
Hola, muchísimas gracias por rápida respuesta pero, debido a mis pocos conocimientos, la cosa me ha quedado poco clara, me explico,
1) En la página inicial pongo:
<a href="info.html?REFERENCIA=cv110">Solicitar más información</a>
Donde REFERENCIA es el nombre del campo del formulario que ha de recibir el valor y cv110 el valor antes mencionado.
2) En la página final (info.html) pongo antes del </head> el código que me has indicado:
<script language="javascript" type="text/javascript">
cadVariables = location.search.substring(1,location.search.length);
arrVariables = cadVariables.split("&");
for (i=0; i<arrVariables.length; i++) {
arrVariableActual = arrVariables.split("=");
if (isNaN(parseFloat(arrVariableActual[1])))
eval(arrVariableActual[0]+"='"+unescape(arrVariableActual[1])+"';");
else
eval(arrVariableActual[0]+"="+arrVariableActual[1]+";");
}
</script>
3) Ahora viene mi duda: cómo le indico al campo REFERENCIA del formulario
<input type=text size=10 maxlength=10 name="REFERENCIA">
Que reciba el valor cv110 que le he indicado en la página inicial.
No sé si mi planteamiento es correcto.
Serías tan amable de guiarme.
Muchísimas gracias.
Si, tu planteamiento es correcto, OK, el ultimo paso sería el siguiente, al final del HTML pon este javascript:
<SCRIPT>
nombre_del_formulario.REFERENCIA.value=REFERENCIA;
</SCRIPT>
Esto debe de asignar el valor enviado al campo que llamaste REFERENCIA.
Pruébalo!.
Muchísimas gracias!
No tengo palabras suficientes para agradecerte tu amabilidad y tus conocimientos.
Todo funciona a la perfección.
Un saludo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas