java 修改刪除返回當前頁面問題解決辦法
阿新 • • 發佈:2019-01-08
我們在一些專案開發中,會遇到這樣類似的問題,當用戶點選刪除或者修改以後,頁面總是返回到預設的第一頁,這樣子看起來使用者體驗度也不是很高,那麼,我們有解決的辦法的嗎?有的人建議可以用Ajax進行解決,這樣子的思路也是可以的,筆者沒有試過這種方法.此處,我給大家分享另一種解決辦法
在這裡,看後臺的程式碼
在這上面的時候,當用戶點選刪除或者更新的時候,因為引數預設page=1的情況下,自然會默然重定向到第一個頁面,那麼,我們可以自己設想一下,如果在引數後面給定一個引數的時候,那麼,頁面自然就會重定向到當前頁面所在頁數,例如:這裡是後臺struts.xml <!-- 這裡是刪除指定運單號 --> <action name="delInfoDel" class="com.blogcsdn.action.DeleteOrderInfoAction"> <result type="redirectAction">listinfo</result> </action>
<action name="delInfoDel" class="com.blogcsdn.action.DeleteOrderInfoAction">
<result type="redirectAction">listinfo?page=${current_page}</result>
</action>
此處,型別如果是type="redirectAction",後面的listinfo不用加action,如果是type="redirect" ,則後面的listinfo則要加action,具體的方法還有<param>關於此類引數的用法,大家如果感興趣,可以自己查詢.
①在頁面給定一個隱藏表單<input type = "hidden" name="page" value = "${page}">此處的頁面是你當前頁面的頁數
②回到DeleteOrderInfoAction中,記得,一定是你引數引入的DeleteOrderInfoAction這個JavaBean中,這個類必須有page的setter和getter方法,然後當執行完刪除操作的時候,當前引數page屬性會傳入到要重定向到某個頁面的page引數
這裡是給出DeleteOrderInfoAction中裡面的部分程式碼
//這裡是從頁面獲取到的當前使用者所操作的頁面
private int page;
//這裡是頁面重定向到當前使用者所操作的頁面
private int current_page;
public int getPage() {
return page;
}
public void setPage(int page) {
this.page = page;
}
public int getCurrent_page() {
return current_page;
}
public void setCurrent_page(int currentPage) {
current_page = currentPage;
}
public String execute() throws DAOException {
//把當前使用者所操作的頁面數傳給頁面重定向到的那個current_page引數
//這裡是你的刪除操作
current_page = page;
return "success";
}
注意:要給定重定向的引數,必須在你修改或者刪除的JavaBean元件中,必須有page的getter和setter方法
(以上只是自己解決問題的部分思路,當然,還有一個問題,如果使用者把當前頁的資訊全部刪除,那麼,頁面就要自動跳轉到上一頁,這個問題我現在沒有研究,當然,大家如果這個還有思路,可以共同來研究)