我使用JSF創建問卷,因此我需要實用地創建我的整個xhtml,因爲存在不同類型的問題,並且它們的數量未預定義。以編程方式創建並將f:selectItems添加到HtmlSelectOneRadio
我只有一個h:panelGrid在我的視圖上,剩下的在我的支持bean中生成。
我沒有問題創建HtmlOutputText和HtmlInputText。爲此,我使用getApplication創建它們,例如像這樣:
getApplication().createComponent(HtmlOutputText.COMPONENT_TYPE);
,然後將組件添加到我的網是這樣的:
grid.getChildren().add(questionnumber);
,其中 「網格」 是我panelGrid的元素。 所以我把我的問題放在一個循環中,並根據db中的問題類型決定要創建什麼類型的組件。如果問題是一個正常的文本問題,我可以輕鬆使用HtmlInputText。但我也有多個選擇題。因此我需要創建SelectOneRadio菜單並在其中添加SelectItems。
我可以使用與上面提到的相同的createComponent方法創建HtmlSelectOneRadio
。但我無法添加選項(selectitem組件)。有沒有辦法可以做到這一點?我們有沒有這個我失蹤的UIComponent?