0

選択したら、それに関連するいくつかのオプションを表示したいラジオボタンがあります..オプションは関連するBeanにあります。それ、どうやったら出来るの?

<h:panelGrid columns="2" cellpadding="0" cellspacing="0" >
    <h:selectOneRadio value="#{managePaymentModel.reportFilter.options}" layout="pageDirection" label="Select Option" disabled="#{managePaymentModel.reportPreview}">
        <f:selectItems value="#{managePaymentModel.reportOptions}" var="type" itemValue="#{type.value}" itemLabel="#{type.label}" />
    </h:selectOneRadio>
</h:panelGrid>
@Override
public Map reportSelector() {
    Map<Integer, String> map = new HashMap<Integer, String>();
    map.put(ManagePaymentBeanLocal.LIST_PAYMENTS_SUMMARY, "List of Payments Summary");
    map.put(ManagePaymentBeanLocal.LIST_PAYMENTS_DETAIL, "List of Payments Detail");
    return map;
}
@Override
public Map reportOptions(ReportFilter filter) {
    Map<Integer, String> option = new HashMap<Integer, String>();
    // report configurations
    switch (filter.getSelect()) {
        case ManagePaymentBeanLocal.LIST_PAYMENTS_SUMMARY:
        case ManagePaymentBeanLocal.LIST_PAYMENTS_DETAIL:
            option.put(ReportFilter.OPTION1, "By Beneficiary");
            option.put(ReportFilter.OPTION2, "By Reference");
            break;
    }
    return option;
}
4

1 に答える 1

0

このコードをselectOneRadio内に配置できます

<f:ajax event="change" render="@form" />

これにより、背後にあるモデルが更新され、公式が再レンダリングされます

于 2012-05-11T15:13:45.193 に答える