如何重置selectOneMenu上的旧值

How to reset old value on selectOneMenu

提问人:Nicolas 提问时间:9/20/2023 更新时间:9/20/2023 访问量:29

问:

当我从下拉列表中选择一个值时,我必须检查该值是否存在于地图中,如果存在,则必须使用旧值重置下拉列表。请问我该怎么做。

这是我的代码:

<h:selectOneMenu value="#{item}"
valueChangeListener="#{bean.changeType}">
<a4j:support event="onchange" ajaxSingle="true"
reRender="panelEns_#{suff}" />
<f:selectItems
value="#{bean.form.listeSelectType}" />
</h:selectOneMenu>

和方法转换器类型:

public void changeTypeAide(ValueChangeEvent event) throws ServiceException {
        Long idType = (Long) event.getNewValue();
        Long idTypeOld = (Long) event.getOldValue();
        
        Long typeSelected = (Long) ((HtmlDataTable) event.getComponent()
                .getParent().getParent()).getRowData();

        int indexItem = form.getListeIdsTypes()
                .indexOf(typeSelected);
        form.getListeIdsTypes().set(indexItem, idType);
        
        if (form.getMapSelectType.containsKey(idType)) {
                addMessage(Severity.SEVERITY_ERROR, "Erreur ....");
                form.setExistType(true);
                form.setidTypeOld(idTypeOld);
                return;
            }
            
            //code
}
JavaScript Java Ajax Richfaces

评论


答: 暂无答案