validacion - validar formulario javascript html5
pasar datos de formulario a otra página HTML (5)
Tengo dos páginas HTML: form.html y display.html. En form.html, hay un formulario:
<form action="display.html">
<input type="text" name="serialNumber" />
<input type="submit" value="Submit" />
</form>
Los datos del formulario se envían a display.html. Quiero mostrar y usar los datos de forma serialNumber
en display.html, como se muestra a continuación:
<body>
<div id="write">
<p>The serial number is: </p>
</div>
<script>
function show() {
document.getElementById("write").innerHTML = serialNumber;
}
</script>
</body>
Entonces, ¿cómo puedo pasar la variable serialNumber
de form.html a display.html para que el código anterior en display.html muestre el número de serie y la función de JavaScript show () obtenga el serialNumber
del primer HTML?
Necesita obtener los valores de la cadena de consulta (ya que no tiene un método establecido, su uso es GET por defecto)
usa el siguiente tutorial
http://papermashup.com/read-url-get-variables-withjavascript/
function getUrlVars() {
var vars = {};
var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
vars[key] = value;
});
return vars;
}
Si no tiene la opción de usar la programación del lado del servidor, como PHP, puede usar la cadena de consulta o los parámetros GET.
En la forma, agregue un atributo method="GET"
:
<form action="display.html" method="GET">
<input type="text" name="serialNumber" />
<input type="submit" value="Submit" />
</form>
Cuando envían este formulario, el usuario se dirigirá a una dirección que incluye el valor serialNumber
como parámetro. Algo como:
http://www.example.com/display.html?serialNumber=XYZ
A continuación, debe poder analizar la cadena de consulta, que contendrá el valor del parámetro serialNumber
, desde JavaScript, utilizando el valor de window.location.search
:
// from display.html
document.getElementById("write").innerHTML = window.location.search; // you will have to parse
// the query string to extract the
// parameter you need
Ver también cadena de consulta de JavaScript .
La alternativa es almacenar los valores en las cookies cuando se envíe el formulario y volver a leerlos una vez que se carga la página display.html
.
Consulte también Cómo usar JavaScript para completar un formulario en otra página .
Si su situación es como se describe; Debe enviar acciones a un servicio diferente desde un único formulario y tiene dos botones de envío y desea enviar cada botón de envío a diferentes páginas, luego su respuesta más fácil está aquí.
Para enviar datos a dos servidores, haga un botón como un envío y el otro como botón. En el primer botón, envíe la acción en su etiqueta de formulario como de costumbre, pero en el otro botón llame a una función de JavaScript; aquí tiene que enviar un formulario con el mismo campo pero a diferentes servelets luego escriba otra etiqueta de formulario después del primer close.declare mismos cuadros de texto allí pero con attribute.now oculto cuando inserte datos en el primer formulario y luego insertarlo en otro formulario oculto con algún código de JavaScript.Escribir una función para el segundo botón que envía la segunda forma. Luego, cuando haces clic en el botón de enviar, se realizará la acción en el primer formulario, si haces clic en el botón, se llamará a la función para enviar un segundo formulario con su acción. Ahora su segunda forma será llamada al segundo servlet.
Aquí puede llamar a dos serveltes de la misma página html o jsp con algún código mixto de javascript
Un EJEMPLO de segunda forma oculta
<form class="form-horizontal" method="post" action="IPDBILLING" id="MyForm" role="form">
<input type="hidden" class="form-control" name="admno" id="ipdId" value="">
</form>
<script type="text/javascript">
function Print() {
document.getElementById("MyForm").submit();
}
</script>
Use el método "Obtener" para enviar el valor de un campo en particular a través del navegador:
<form action="display.html" method="GET">
<input type="text" name="serialNumber" />
<input type="submit" value="Submit" />
</form>
*first html page*
<form action="display.jsp" >
<input type="text" name="serialNumber" />
<input type="submit" value="Submit" />
</form>
*Second html page*
<body>
<p>The serial number is:<%=request.getParameter("serialNumber") %></p>
</body>
you will get the value of the textbox on another page.