我在jsf页面中使用了Tomahawk <t:selectOneRadio>
。我为我的后端bean中的每个单选按钮保留了一个布尔值,但是我将组件链接到辅助bean时遇到了问题。我该如何将组件链接到支持bean?
我的数据模型在支持bean中是错误的吗?
这是我的代码:
<t:radio index="0" for="select"></t:radio>
<t:selectOneRadio id="select" layout="spread">
<f:selectItem itemLabel="Every" itemValue="Every" />
<h:inputText id="days" /> days
<br />
<t:radio index="1" for="select"></t:radio>
<f:selectItem itemLabel="Every Weekday"
itemValue="Every Weekday" />
</t:selectOneRadio>
答案 0 :(得分:1)
使用value
属性。
<t:selectOneRadio value="#{bean.selectedItem}">
也就是说,组件在代码中的使用方式不正确。只有选择项应该放在组件中,t:radio
索引应该从0开始。这是一个重写:
<t:selectOneRadio id="frequency" value="#{bean.frequency}" layout="spread">
<f:selectItem itemLabel="Every" itemValue="Every" />
<f:selectItem itemLabel="Every weekday" itemValue="Every weekday" />
</t:selectOneRadio>
<t:radio for="frequency" index="0" /><h:inputText value="#{bean.days}" /> days
<br />
<t:radio for="frequency" index="1" />
在bean中你需要以下内容:
private String frequency;
private Integer days;
// Add/generate getters and setters.
根据选择,所选的itemValue
将设置为frequency
(可以是"Every"
或"Every weekday"
),也可以设置为days
将设为days
。