我们将在目标网页上为受访者提供两个级别的问题。
在一个页面上,他们将使用复选框选择最多四个兴趣曲目:检查,检查,检查,检查,单击“下一步”。
在下一页上,他们将选择一个选项,这就是表单提交的位置。我需要能够捕获第一页上的复选框选择,以便我可以将它们拉到表单页面上的字段中。
我最初的想法是当用户选择一个复选框时,该复选框存储到一个数组中,然后将该数据作为查询字符串传递给下一页。该页面然后读取查询字符串并将其添加到隐藏字段?非常感谢您的建议/指示。
答案 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>