我正在本地服务器上运行一个动态Web项目,只需单击一个按钮,然后单击viewGrievance.jsp-
<textarea name="replynaction" id="replynaction" class="form-control" placeholder="Enter your Reply (Max 4000 characters)" rows="10" cols="30"></textarea>
<button class="btn btn-lg" type="submit" name="memberaction" value="reply">
Add Reply</button>
Java正在执行其处理任务,并使用此简单代码进行重定向-
RequestDispatcher rd = request.getRequestDispatcher
("jsp/viewGrievance.jsp");
try {
rd.forward(request, response);
} catch (ServletException | IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
这很好,直到我在viewGrievance.jsp页面中插入以下脚本代码以在重定向或重新加载时检索状态-
<script>
if (typeof(Storage) !== "undefined") {
$('form').on('keyup change paste', 'input, select, textarea', function(){
[].forEach.call(document.querySelector('#grievanceview').elements, function(el) {
sessionStorage.setItem(el.name, el.value);
});
});
// then refresh the page and run this to restore your form values:
[].forEach.call(document.querySelector('#grievanceview').elements, function(el) {
el.value = sessionStorage.getItem(el.name);
});
}
</script>
当我插入此代码时,我的表单字段会在重新加载时进行存储和检索,但是在单击按钮时,Java代码似乎没有重定向回页面。它只是显示一个空白页面,而没有任何Java处理。
为什么我的jsp中的此脚本会影响按钮单击上的Java处理?而我该如何克服这个问题呢?