如何在提交后取消选择h:selectManyListbox

时间:2013-01-25 08:56:29

标签: jsf richfaces selectmanylistbox

我正在用jsf和richfaces做一个项目。有一个selectManyList。选择并保存在selectmanylist中后,再次打开SelectManyList。最后选择的项目在列表中被选为默认项目。但是我想阻止最后选择的项目。我该怎么办?

                     <td valign="top">
                        <h:panelGroup id="ajaxAvailableProductPanel2">
                           <h:selectManyListbox
                            size="#{pc_ExternalProviderFrag.callServerBackingBean.availableProductsSelectItemsSize}"
                            id="availableProductsListbox2"
                            style="width: 100%;"
                            valueChangeListener="#{pc_ExternalProviderFrag.callServerBackingBean.handleAvailableProductsListboxValueChange}">
                            <f:selectItems
                                value="#{pc_ExternalProviderFrag.callServerBackingBean.availableProductsSelectItems}" />
                           </h:selectManyListbox>
                        </h:panelGroup>
                     </td>

1 个答案:

答案 0 :(得分:2)

只需清除组件在操作方法中的值。

所以,给出一个

<h:selectManyListbox value="#{bean.selectedItems}">

你可以在行动方法中做到这一点:

public void submit() {
    // ...

    selectedItems = null;
}

顺便说一句,我认为valueChangeListener根本不属于那里,但这是一个不同的问题/问题。