在IceFaces的selectOneMenu组件中使用valueChangeListener

时间:2015-10-24 11:15:32

标签: jsf icefaces

我的JSF / IceFaces页面中有两个下拉列表selectOneMenu,根据我的要求,我希望根据第一个下拉列表的选择在另一个下拉列表中呈现值。

我在下面写了一段代码

<ice:outputText value="Category *" id="category" />
    <ice:selectOneMenu id="category"
                       value="#{createItem.categoryId}"
                       tabindex="4"
                       valueChangeListener="#{createItem.searchSubCategory}"
                       partialSubmit="true">

        <f:selectItems value="#{createItem.categoryList}" />
    </ice:selectOneMenu>                

    <ice:outputText value="Sub Category *" id="subcategory" />

    <ice:selectOneMenu id="subcategory"
        value="#{createItem.subCategoryId}" tabindex="5" >
        <f:selectItems value="#{createItem.subCategoryList}" />
    </ice:selectOneMenu>
public void searchSubCategory(ValueChangeEvent event) {
    try {

        subCategoryList = new ArrayList<SelectItem>();
        subCategoryList.add(new SelectItem(0,"-- Select --"));
    } catch(Exception e) {
        System.out.println(" searchSubCategory exception  ");
        e.printStackTrace();
        showMessageDialog(ProjectConstants.ERROR, e.getMessage());
    }
}

但是在调用searchSubCategory方法后,会生成两个下拉列表,其中一个值为空白值,另一个值为-- Select --

0 个答案:

没有答案