我正在創建一個使用jsf,html,java和JavaDB的網站。我的一個頁面將列出許多圖像,代表客戶可以選擇的菜單。在頁面底部有一個selectManyCheckbox
,其中包含與圖像對應的選項。當客戶選擇了菜單組合時,「訂購」按鈕將引導客戶進入下一頁。在此頁面上列出了有關客戶的其他信息(從數據庫中檢索到),例如:Customer number
,Contact name
等。除此之外,所選菜單應列在表中,列出的行數應相同作爲選擇的菜單數量。我的主要問題是,我想將從selectManyCheckbox
收集的數據用作所選菜單字段中的輸入,其餘部分從數據庫收集(我已完成並且工作正常)。我怎樣才能得到值作爲單獨的值?我只能在輸出文本中使用它們,而不能在輸入字段中使用它們。如何在輸入字段中顯示<h:selectManyCheckbox>的值?
Java代碼:
@Named
@RequestScoped
public class OrderBean implements java.io.Serializable {
private Set<String> menus = new TreeSet<String>();
public Set<String> getMenus() {
return menues;
}
public void setMenus(Set<String> newValue){
menus = newValue;
}
public SelectItem[] getMenuesItems(){
return menuesItems;
}
private static SelectItem[] menuesItems = {
new SelectItem("Menu 1"),
new SelectItem("Menu 2"),
new SelectItem("Menu 3")
};
}
JSF,HTML:
<div class="clear"></div>
<div id="frame">
<div id="frameCheckBox"><h:commandButton value="#{mld.Order}" action="Order"/>
<h:selectManyCheckbox value="#{orderBean.menus}">
<f:selectItems value="#{orderBean.menusItems}"/>
</h:selectManyCheckbox>
</div>
</div>
你到底想要達到什麼目的?你已經將所選的值輸入到服務器端,在'menues'集合中,那麼你想怎麼做呢? – 2013-03-13 21:39:48
我認爲這裏可能存在英語溝通問題......你的意思是項目清單嗎?或者是用戶真的購買了幾個菜單(對於他們的餐廳也許......菜單是項目清單,通常是價格和說明/照片) – Gus 2013-03-13 21:43:11
客戶輸入了送貨地址和日期,但所選菜單的信息應該從前一頁收集並插入。這些信息隨後會發送並作爲訂單註冊到客戶的數據庫中存儲。問題在於,我無法從selectManyCheckbox獲取信息作爲單個變量在發送到數據庫之前將它們放入「總順序列表」中。我只能將它們作爲輸出(全部一次),而不能作爲新字段的輸入。也許我正在做的事情完全錯誤和麻煩。 – CronbachAlpha 2013-03-13 21:54:49