2017-05-28 165 views
0

我有一個包含布爾屬性「Boolean isValid」的後端pojo(如MyBean)。我正在填充MyBean的列表以顯示在Struts2 jsp上。現在我想在每個MyBean旁邊都有一個單選按鈕,以便用戶可以選擇其中任何一個作爲有效bean。如何使用單選按鈕綁定布爾bean屬性

我不希望無線電在預先定義的值列表中選擇(因爲「list」是s:radio中的強制屬性)。任何人都可以建議如何實現這一目標?

回答

0

布爾屬性應該有一個getter

public Boolean isValid() { return this.isValid; } 

一旦列表被返回,您可以使用OGNL投影僅過濾isValid值。或者,如果您使用listkeylistValue屬性,則根本不需要它。

見的例子從Struts的文檔:

在這個例子中,一個無線電控制顯示帶有性別的列表。 性別列表是從屬性id=genders構建的。框架 調用getGenders()將返回Map

有關使用listKeylistValue屬性的示例,請參閱選擇標記部分。 如果要選擇該特定性別,則將在動作類別中確定(在此情況下)方法 的缺省選定項目,該項目應返回類似於 關鍵點的值的值。

<s:action name="GenderMap" var="genders"/> 
<s:radio label="Gender" name="male" list="#genders.genders"/> 
<@s.radio name="car" list={"ford": "Ford Motor Co", "toyota": "Toyota"} listKey="key" listValue="value" /> 
+0

感謝您的回覆!但我已經試過了。這個無線電(在一個迭代器下)只有在它們的「名稱」相同的情況下才能工作。但是我不能保留所有bean的名稱,因爲在提交頁面時使用了這個「名稱」(每個radio都必須映射到後端的任何特定bean,而前端只有「只有一個選擇」關係。 –

相關問題