问题:
首页点击一个连接,切换div(id = cc_bi)
<div id="K_a">
<a href="TestDire.jsp?#cc_bi">cc_bi</a>
</div>
提交表单后,企图直接回到div(id = cc_bi)视图。servlet代码如下:
request.getRequestDispatcher("TestDirejsp?#cc_bi").forward(request, response);
然而,只能跳转至jsp首页,后面的div指定无效
解决方案:
(1)
Servlet:
response.sendRedirect("/AhWeb002/TestDire.jsp?#cc_bi");
------------------------------------
(2)给jsp传个参数(随便什么),在jsp端取得该参数,根据参数是否取得再做判断
Servlet: request.getRequestDispatcher("/TestDire.jsp?id='xx'").forward(request, response);
JSP:
【<%out.println(request.getParameter("id") + " XX"); %>】
<% if (request.getParameter("id")!= null) {%>
<script type="text/javascript">
window.location.href = "/AhWeb002/TestDire.jsp?#cc_bi";
</script>
<%} %>
------------------------------------
知识点:
request.getRequestDispatcher().forward()在服务器跳转,只能指定页面,不能再指细节;地址栏地址不变;
request, response全部传给页面。
request.sendRedirect()在页面进行跳转,灵活的多,但要指定项目名(本案例中,加个/AhWeb002);
request, response全部是新的。