我想使用webstorage:sessionStorage来保存表单记录。当用户提交表单时,我必须打印所有提交的表单值。 这是我的代码:
<!DOCTYPE html>
<html>
<head>
<script>
function validateForm() {
//some checks here....
if(!sessionStorage.getItem("mainForm")) {
sessionStorage.setItem("mainForm", 0);
}
else {
mainForm = sessionStorage.getItem("mainForm");
}
mainForm++;
sessionStorage.setItem("mainForm",document.getElementById("id"));
var text = "";
var i;
for(i = 0; i < sessionStorage.length; i++) {
text += "Course id is" + i + "<br>";
}
document.getElementById("print").innerHTML = text;
}
</script>
</head>
<body>
<form name="mainForm" onsubmit="validateForm()">
<input type="text" name="id" maxlength="7" required>
<input type="submit" value="Register">
<p id="out" style="color:red"></p>
<p id="print"> </p>
</form>
</body>
</html>
上述代码不起作用。你能解释一下怎么做吗?
答案 0 :(得分:0)
mainForm
仅在if语句的一个分支中定义。你可以摆脱这一行的else
部分:
mainForm = sessionStorage.getItem("mainForm");
也许就像这个JSFiddle。但是,我不确定你的代码应该做什么。