2012-08-31 69 views
0

在每行末尾有一個頁面,其中有多個行,並且具有「更改狀態」按鈕[a'提交'按鈕]。目前有超過十種身份。當我點擊「更改狀態」按鈕時,控件進入操作類,並且頁面以更改後的狀態重新加載。Struts 2中的說明

我有id與每一行關聯。當頁面重新加載時,如何確定在哪一行中單擊了「更改狀態」按鈕?我應該通過java腳本將id傳遞給動作類嗎?有沒有比這更簡單的方法?

+0

是變更狀態是否提交按鈕? –

+0

是的,它是一個提交按鈕。編輯我的問題。 – user2434

回答

2

那麼你可以利用Struts2的多的提交按鈕functionality.Like您可以根據您的ID設置提交按鈕值,並收集在你的行動,用它自己的方式類似

<button type="submit" value="Submit" name="buttonName"> 
<button type="submit" value="Clear" name="buttonName"> 


class MyAction extends ActionSupport { 
    private String buttonName; 
    public void setButtonName(String buttonName) { 
     this.buttonName = buttonName; 
    } 
    public String execute() { 
     if ("Submit".equals(buttonName)) { 
     doSubmit(); 
     return "submitResult"; 
     } 
     if ("Clear".equals(buttonName)) { 
     doClear(); 
     return "clearResult"; 
     } 
     return super.execute(); 
    } 
} 

所以在短值可以是什麼uniqque ID,您可以使用它在行動按您選擇 的細節

+0

這不是一個真正的提交按鈕。這是一個html鏈接,其中,我通過JavaScript提交。所以我不認爲我們可以使用這個東西。我們有類似的東西嗎? – user2434

+0

如果它的鏈接比我相信你可以添加該ID到鏈接發送它作爲查詢字符串 –

+0

是的好吧。但是在返回到同一個網頁時,我如何找出正確的狀態框並填充它? – user2434

0

您可以將該ID添加到您的表單中,這樣您在提交時就會收到該ID作爲參數。無需JavaScript。

0

您可以爲每一行執行不同的表單。 每個表格可以有一個

<s:hidden /> 

與行的id。 通過這種方式,您總是可以知道點擊提交的內容。