将表单数据传递给另一个HTML页面

我有两个HTML页面:form.html和display.html。 在form.html中,有一个表单:

<form action="display.html"> <input type="text" name="serialNumber" /> <input type="submit" value="Submit" /> </form> 

表单数据被发送到display.html。 我想在display.html中显示和使用表单数据serialNumber ,如下所示:

 <body> <div id="write"> <p>The serial number is: </p> </div> <script> function show() { document.getElementById("write").innerHTML = serialNumber; } </script> </body> 

那么我怎样才能将serialNumbervariables从form.html传递给display.html以便display.html中的上述代码将显示序列号,并且JavaScript函数show()从第一个HTML中获取serialNumber

如果您没有select使用服务器端编程(如PHP),则可以使用查询string或GET参数。

在表单中添加一个method="GET"属性:

 <form action="display.html" method="GET"> <input type="text" name="serialNumber" /> <input type="submit" value="Submit" /> </form> 

当他们提交这个表单时,用户将被引导到一个包含serialNumber值作为参数的地址。 就像是:

 http://www.example.com/display.html?serialNumber=XYZ 

然后,您应该能够使用window.location.search值来parsing查询string(将包含serialNumber参数值) – 从JavaScript中parsing:

 // from display.html document.getElementById("write").innerHTML = window.location.search; // you will have to parse // the query string to extract the // parameter you need 

另请参阅JavaScript查询string 。


另一种方法是在表单提交时将值存储在cookie中,并在加载display.html页面后再次将其从cookie中读出。

另请参见如何使用JavaScript在另一页上填写表单 。

您需要从查询string中获取值(因为您没有设置方法,默认使用GET)

使用下面的教程。

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; } 

使用“Get”方法通过浏览器发送特定字段的值:

 <form action="display.html" method="GET"> <input type="text" name="serialNumber" /> <input type="submit" value="Submit" /> </form> 

如果你的情况如上所述; 你必须从一个表单发送一个不同的servlets器,你有两个提交button,你想发送每个提交button到不同的页面,那么你最简单的答案就在这里。

发送数据到两个servelets使一个button作为一个提交,另一个作为button.On第一个button在您的表单标签发送动作正常,但另一个button调用JavaScript函数在这里你必须提交一个表单,但具有相同的字段,但然后在第一次closures之后写入另一个表单标签.declare相同的文本框在那里,但是隐藏的属性。现在,当你在第一个表单插入数据,然后插入到另一个隐藏的forms与一些JavaScript代码。写一个函数提交第二个button第二种forms。 然后当你点击提交button时,它将以第一种forms执行动作,如果你点击button,它将调用函数来提交第二种forms的动作。 现在你的第二个表单将被调用到第二个servlet。

在这里你可以调用两个相同的html或jsp页面与一些javascript的混合代码的serveltes

第二个隐藏表单的例子

 <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> 
 *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.