如何使用Ajax
在Backingbean上的List中传递<ui:repeat>
<h:selectOneRadio>
的结果?
<h:form rendered="#{lessonBean.TEST!=null}">
<ui:repeat value="#{lessonBean.TEST.questions}" var="quest">
<h:selectOneRadio value="">
<f:selectItem itemValue="1" itemLabel="${quest.a1}"/>
<f:selectItem itemValue="2" itemLabel="${quest.a2}"/>
<f:selectItem itemValue="3" itemLabel="${quest.a3}"/>
<f:selectItem itemValue="4" itemLabel="${quest.a4}"/>
<f:selectItem itemValue="5" itemLabel="${quest.a5}"/>
</h:selectOneRadio>
</ui:repeat>
</h:form>
如果lessonBean.TEST.questions
是Question
对象的列表,则可以向Question
类添加名为answer
的新Integer
字段(带有getter和setter(,并执行以下操作:
<h:form rendered="#{lessonBean.TEST!=null}">
<ui:repeat value="#{lessonBean.TEST.questions}" var="quest">
<h:selectOneRadio value="#{quest.answer}">
<f:ajax event="click" process="@this" update="@this">
<f:selectItem itemValue="1" itemLabel="${quest.a1}"/>
<f:selectItem itemValue="2" itemLabel="${quest.a2}"/>
<f:selectItem itemValue="3" itemLabel="${quest.a3}"/>
<f:selectItem itemValue="4" itemLabel="${quest.a4}"/>
<f:selectItem itemValue="5" itemLabel="${quest.a5}"/>
</h:selectOneRadio>
</ui:repeat>
</h:form>