問題:
首頁點擊一個連接,切換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全部是新的。