JavaScript将表单值传递给新页面

时间:2015-05-26 17:55:21

标签: javascript jquery

我们将在目标网页上为受访者提供两个级别的问题。

在一个页面上,他们将使用复选框选择最多四个兴趣曲目:检查,检查,检查,检查,单击“下一步”。

在下一页上,他们将选择一个选项,这就是表单提交的位置。我需要能够捕获第一页上的复选框选择,以便我可以将它们拉到表单页面上的字段中。

我最初的想法是当用户选择一个复选框时,该复选框存储到一个数组中,然后将该数据作为查询字符串传递给下一页。该页面然后读取查询字符串并将其添加到隐藏字段?非常感谢您的建议/指示。

3 个答案:

答案 0 :(得分:1)

查询字符串将是您的最佳选择,如果信息不是安全风险,那么很容易从那里获取所有数据。

你可以做一个这样简单的事情:

www.example.com/home.aspx?questiona=true

然后你可以用javascript

来阅读它

在页面加载时调用该函数,并使用ie

传递要分解的名称
getQueryStringValue('questiona');

   function getQueryStringValue(name) {
        name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
        var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
            results = regex.exec(location.search);
        var answer = results === null ? "" :
decodeURIComponent(results[1].replace(/\+/g, " "));
        alert(answer);
    }

此外,您可以将数据存储在cookie中,这也可以。

此外,您可以在一个页面上拥有所有内容,为什么需要重新加载页面?每次用户点击答案时,您都可以操作UI。

其他方式意味着您必须将其存储在服务器端并将其重新放回新页面。

我建议通过查询字符串,它可以更快地完成工作。

答案 1 :(得分:1)

@JoshStevens是正确的,url参数可能是要走的路。如果这不是一个选项,因为数据是敏感的,您可以查看sessionStorage以暂时在页面之间存储数据。

答案 2 :(得分:0)

它必须是两页吗?您仍然可以在一个页面上显示/隐藏内容 - 根据初始内容选择提取动态内容。这样,您就可以在表单中包含所有字段。您只需要选择性地显示内容。

<form>
<div id="step1">step1 content</div>
<div id="step2">step2 content</div>
</form>