如何从列表中选中/取消选中所有复选框

How check/uncheck all checkboxes from a list

本文关键字:复选框 取消 列表      更新时间:2023-09-26

这是一个复选框列表的代码:

<div class="span8">
    <h:panelGrid id="columnGrid" width="450">
        <rich:orderingList id="columnlist" value="#{EquipReportBean.settings}" listWidth="400" listHeight="250" var="item">
            <s:convertEntity />
            <rich:column>
                <h:selectBooleanCheckbox value="#{item.show_column}" id="showColumn"/>
            </rich:column>
            <rich:column>
                <h:outputText value="#{item.column_id.name}" id="columnName"></h:outputText>
                </rich:column> 
        </rich:orderingList>
    </h:panelGrid> 
</div>

我已经在互联网上找到了很多关于检查/取消检查所有的JavaScript。但这里的问题是,我没有所有的复选框id来检查代码。我如何使用另一个复选框来勾选或取消勾选所有这些函数。谢谢你!

几年前我已经用RichFaces和jQuery做过了,这应该在你的情况下做的技巧:

<rich:column>
    <f:facet name="header">
       <input type="checkbox" onclick="jQuery(#{rich:element('columnlist')}).find('input[type=checkbox]').attr('checked',this.checked);" />
    </f:facet>
    <h:selectBooleanCheckbox value="#{item.show_column}" id="showColumn"/>
</rich:column>

更多信息:

  • RichFaces组件引用函数

将相同的styleClass添加到您的复选框中(Richfaces样式类重新定义):

styleClass="checkboxToCheckClass"

然后通过javascript(这里是jquery):

jQuery('.checkboxToCheckClass').attr('checked', true);
使用jquery获取所有带有特定类名的复选框