2012-11-30 130 views
1

有一些類似的問題,但我還沒有找到任何真正解決我的問題。這裏去...JSF Datatable項目刪除

有正常工作的簡化可以在這裏找到樣本:

http://134.154.10.163:8000/yyudatatable/ 

而且文件可見這裏:

http://whywhyewej.sci.csueastbay.edu/~yyu/cs6522/facelets/datatable/

什麼我百思不得其解的是: 當我檢查一個不是最後一個的項目,並點擊'刪除',該項目被刪除。 (如果多個項目被選中,只有最上面的項目消失,我現在不擔心這種行爲。)

當我刷新時,直接在先前刪除的項目下面的項目也被刪除。我可以重複這一點,只要有剩下的物品在原來的移除目標下面,刷新和觀看物品就會消失。

我懷疑這與數據表呈現信息的方式有關;該複選框的價值正在實現新的目標。但我不知道如何阻止它。

感謝您的幫助提前。

回答

1

發生這種情況的原因是表格re-submission。刷新頁面時,表單會再次提交。這是Web應用程序中的常見問題。爲了解決這個問題,在操作被觸發後,重定向到當前頁面。在JSF最簡單的方法是這樣的。
check()方法的末尾添加此行。

FacesContext.getCurrentInstance().getExternalContext().redirect("your_current_page.jsf"); 
+0

感謝您的回答!非常感激。 –