表单数据传递到另一个HTML页面(passing form data to another HTML

2019-07-19 05:50发布

我有两个HTML页面:form.html和display.html。 在form.html,还有一种形式:

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

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

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

那么,如何可以通过serialNumber变量从form.html到display.html使得display.html上面的代码会显示序列号和JavaScript函数显示()获取serialNumber从第一HTML?

Answer 1:

如果你没有选择,使用服务器端编程,比如PHP,你可以使用查询字符串,或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

然后,您应该能够解析查询字符串-其中将包含serialNumber参数值-从JavaScript,使用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

又见JavaScript的查询字符串 。


另一种方法是将值存储在cookie中,当形式是,一旦再次提交,并读出来的饼干display.html页面加载。

又见如何使用JavaScript来填补另一个页面上的表单 。



Answer 2:

你需要得到查询字符串值(因为你没有一个方法集,您使用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;
}


Answer 3:

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

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


Answer 4:

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

在display.html你应该添加以下代码。

<script>
function getParameterByName(name, url) {
    if (!url) url = window.location.href;
    name = name.replace(/[\[\]]/g, '\\$&');
    var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'),
        results = regex.exec(url);
    if (!results) return null;
    if (!results[2]) return '';
    return decodeURIComponent(results[2].replace(/\+/g, ' '));
}

var sn = getParameterByName('serialNumber');

document.getElementById("write").innerHTML = sn;

</script>


Answer 5:

如果你的情况是这样描述的; 你必须从一个单一的形式发送动作不同的小服务程序,你有两个提交按钮,你要发送的每个提交按钮不同的页面,那么你的最简单的答案就在这里。

用于发送数据两个servelets使一个按钮作为提交和其他作为button.On第一个按钮在你的表单标签为正常送行动,但另一方面按钮这里调用JavaScript函数,你必须提交与同一领域的形式,但不同servelets然后写后第一close.declare同一文本框有,但隐藏attribute.now当你插入第一个表单数据的另一种形式的标签,然后将其插入另一个隐藏的形式与第二个按钮,提交一些JavaScript code.Write一个功能第二形式。 然后,当你点击提交按钮会在第一种形式执行的操作,如果你点击按钮,它会调用函数提交第二形式的行动。 现在你的第二个表格将被要求第二个servlet。

在这里,你可以调用从相同的HTML或JSP网页在两次serveltes用JavaScript的一些混合代码

的第二隐藏的表单的示例

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



Answer 6:

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


文章来源: passing form data to another HTML page