我有一個jsp頁面,頁面中間有一個下拉控件。當用戶更改下拉列表的選擇時,頁面將提交給一個servlet並轉發回同一頁面,並顯示有關要顯示的用戶選擇的詳細信息。我希望頁面能夠自動導航回下拉菜單,而不必讓用戶自己回滾。如何使用RequestDispatcher從servlet轉發到內部頁面鏈接
在檢索相應的數據代碼之後的servlet,我有:
String forwardTo = "/WEB-INF/jsp/task-create.jsp#taskTypeSelection"
request.getRequestDispatcher(forwardTo).forward(request, response);
在我想這個servlet去放置下拉控制上面,看起來像JSP中的鏈接:
<a name="taskTypeSelection" id="taskTypeSelection"></a>
<select class="form-control" id="taskTypeID" name="taskTypeID">
<option value="">Select a task type.</option>
<option...
但是,這不起作用,並且當分派器嘗試轉發時出現404錯誤。有沒有辦法讓我的當前設置與RequestDispatcher一起工作?我認爲如果我使用HttpServletResponse.sendRedirect,這個問題會少一些,但我使用RequestDispatcher增加安全性,因爲我已將所有jsps放在WEB-INF文件夾中,因此無法訪問sendRedirect(至少那是我的理解,這對我來說很新鮮)。
謝謝!
你爲什麼不使用滾動純JavaScript或JQuery的功能?我認爲它可以比上面提到的RequestDispatcher更簡單。 –
因爲我需要從servlet觸發滾動/導航操作。有可能這樣做嗎?我不認爲這是。 – arcademonkey
無論如何,我認爲你必須使用客戶端代碼來做到這一點。也許這個演示會幫助你:http://stackoverflow.com/questions/6677035/jquery-scroll-to-element –