-1
 <h:form>
        <rich:dataTable value="#{classBean.classList}" var="class"
                id="classTable" style="width: 90%" rows="10">    
        <f:facet name="header">
        <h:outputText value="class list" style="float: left"></h:outputText>
        </f:facet>
        <rich:column style="width: 35px">
            <h:selectBooleanCheckbox
            value="#{classBean.selected[class.name]}" />
            </rich:column>
            <rich:column>
        <f:facet name="header">
                   class name
             </f:facet>
        <h:outputText value="#{class.name}" />
        </rich:column>  
        <f:facet name="footer">
           <a4j:commandButton value="add" action="#{classBean.add}" />
           <a4j:commandButton value="delete" action="#{classBean.delete}" />
         </f:facet>
        <rich:dataTable>
     <h:form>

我必须进行验证,例如用户应该在单击删除命令按钮之前至少选择一个复选框。

如果我使用验证器,它将仅检查选中或未选中...。单击删除命令按钮时,我需要选中复选框

4

1 回答 1

1

Add this code in your bean

private boolean checked;

public boolean isChecked() 
{

    if(selected.values().contains(true))
        checked=true;
    else
        checked=false;


    return checked;
}

use a popup panel to display error message and set the rendered attribute to #{bean.checked}

于 2012-10-15T12:09:31.190 回答