【问题标题】:primefaces datatable mutiple selection checkbox: checking at least one item is selectedprimefaces数据表多选复选框:选中至少一项被选中
【发布时间】:2015-10-28 16:02:04
【问题描述】:

我有一个带有多个复选框选择的 primefaces 数据表,但我找不到使用 postValidate 事件检查是否至少选择了一个项目的方法

xhtml

<p:dataTable
        var="item"
        value="#{myBean.list}"
        selection="#{myBean.selectedItems}">
        <p:column selectionMode="multiple" />
        <p:column>
            <f:facet name="header">
            <h:outputText value="Item" />
            </f:facet>
                <h:outputText value="#{item.value}" />
        </p:column>                 
        <f:event listener="#{myBean.isSelectedItem}" type="postValidate" />     
</p:dataTable>

我的豆子

 public void isSelectedItem(ComponentSystemEvent event) {
            HtmlDataTable table = (HtmlDataTable) event.getComponent();
            //no idea how to get checkboxes inside datatable
    }

如何获取数据表中的元素?

【问题讨论】:

    标签: jsf jsf-2 primefaces datatable


    【解决方案1】:

    我认为您可以通过检查选择列表“selectedItems”是否包含值来使用您的 back bean 方法来做到这一点。

    【讨论】:

    • 感谢您的回复,但我已经尝试过您的解决方案,但没有成功:(
    • @iconte:那你试错了。这有效,因为我使用它。
    • @Kukeltje 你介意举个例子吗?我不确定,但根据此链接mkyong.com/jsf2/multi-components-validator-in-jsf-2-0,我相信获取该值的唯一方法是使用 ComponentSystemEvent 参数。此时支持 bean 属性为空
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-21
    • 1970-01-01
    • 2016-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多