将前端JS数据传递给后台服务器
之前做的电子考试系统,应用中发现,不提交答案的时候,前端选题变化时时间传到后台的,不是现在计时,而是最初的值,很致命。
图中,exmpNm、exmqNm、tmDt都是前后传递的变量,tmDt在前端页面里通过JS变量而变化。
<input type="hidden" id="exmqNm" value="${exmqNm}" name="exmqNm"/> <input type="hidden" id="exmpNm" value="${exmpNm}" name="exmpNm"/> <input type="hidden" id="tmDt" value="${tmDt}"/> 每次向后台传递前都把JS变量tmDt更新页面标签tmDt,也不行:document.getElementById("tmDt").value = tmDt.toString();
调整页面标签设置:
把a标签的链接变化通过JS代码实现:
function optTmDt(nm) { var exmpNm = document.getElementById("exmpNm").value; var exmqNm = document.getElementById("exmqNm").value; var tmDtFlg = tmDt.toString(); var str = exmpNm +"&exmqNm=" + exmqNm + "&tmDt=" + tmDtFlg; if(nm==1) { str = "eqrdAct.action?exmqChg=S&exmpNm=" + str; document.getElementById("a1").href= str; } else if(nm==2) { str = "eqrdAct.action?exmqChg=U&exmpNm=" + str; document.getElementById("a2").href= str; } else if(nm==3) { str = "eqrdAct.action?exmqChg=D&exmpNm=" + str; document.getElementById("a3").href= str; } else { str = "eqrdAct.action?exmqChg=E&exmpNm=" + str; document.getElementById("a4").href= str; } }
问题解决。