在页面重定向后保留表单值,使用JavaScript在新表单中显示这些值

时间:2014-07-10 08:46:52

标签: javascript html string

我已经编写了以下代码,现在我想要的是文本字段的名称' name'在下一个html但它不应作为查询字符串传递。

 <html>
    <head>
        <script>
            function myFunction() {
            location.replace("newHtml.html");
            }
        </script>
    </head>
    <body>
        <input type="text" name="name"></input><!--value needs to be retained-->
        <button onclick="myFunction()">Replace Page</button>
    </body>
</html> 

2 个答案:

答案 0 :(得分:1)

您可以使用HTML5 local Storage

localStorage.setItem("lastname", "Smith");
// Retrieve
document.getElementById("result").innerHTML = localStorage.getItem("lastname");

这会将值存储在浏览器中( 必须支持HTML5 ),您可以随时获取值.. !!!这只会在浏览器关闭后清除。

答案 1 :(得分:0)

您可以使用表单标记并通过POST而不是GET传递信息(因此它不是查询字符串),但您必须在目标中使用一点PHP来使用这些值(使用$ _POST)

<form action="https://example.com/newHtml.php" method="POST">
    <input type="text" name="name"></input>
    <button onclick="myFunction()">Replace Page</button>
</form>

您可以将其放在目的地(例如<body>标签内)并使用html进行操作。在这里,我还使用htmlspecialchars来转换&"'<>等内容,以便它们不会混淆html:

<body>
<p>Your name is <?php echo htmlspecialchars($_POST['name']); ?></p>
</body>