2014-09-03 210 views
0

刷新的結果我有,你給一些輸入,然後單擊上一個搜索頁面搜索」按鈕之後,你會得到相同的結果列表頁表格的形式。當您從表中選擇一條記錄時,您將導航到另一個頁面,即詳細信息頁面(其中包含一個「取消」按鈕),其中包含關於該記錄的所有詳細信息,它也有一個取消按鈕。如何從一個網頁到另一個導航不需要在Java

一旦我按下取消按鈕它會進入第一頁,即搜索頁面,但搜索結果不存在(當我按下「搜索」按鈕時生成的表格)。

它被清除。當我按下取消按鈕後,我回到搜索頁面時,我希望那張桌子在那裏。

我正在使用richfaces和JSF。

+1

這有本質無關的Java和是所有關於HTML和JavaScript。 – chrylis 2014-09-03 13:38:00

+0

好的。我認爲我們可以將搜索結果存儲在某個會話變量中,然後使用它。但我不確定 – sharma 2014-09-03 13:41:21

+0

你在哪裏存儲搜索結果?在RequestScoped bean中? – nablex 2014-09-03 13:41:23

回答

0

通常你可以從你的Action方法返回頁面名稱。
爲避免緊密耦合或低內聚性,您可以從Action方法返回結果字符串,並在faces-config.xml中定義特定結果的頁面。
例如:

public String mySubmit(){ 
    String returnString = null; 
    if(operationSuccess){ 
     returnString = "SUBMIT_SUCCESS"; 
    }else{ 
     returnString = "SUBMIT_FAIL"; 
    } 
} 

faces-config.xml中定義navigaion

<navigation-rule> 
    <from-view-id>/index.xhtml</from-view-id> 
    <navigation-case> 
     <from-outcome>SUBMIT_SUCCESS</from-outcome> 
     <to-view-id>/welcome.xhtml</to-view-id> 
    </navigation-case> 
    <navigation-case> 
     <from-outcome>SUBMIT_FAIL</from-outcome> 
     <to-view-id>/error.xhtml</to-view-id> 
    </navigation-case> 
</navigation-rule> 
相關問題