【问题标题】:How to show/hide a p:button based on a checkbox selection inside a p:datatable?如何根据 p:datatable 中的复选框选择显示/隐藏 p:button?
【发布时间】:2016-05-15 22:45:25
【问题描述】:

我有一个简单的按钮,

<h:panelGroup>
    <p:commandButton rendered="#{myBean.checkboxSelected}" value="Action" />
</h:panelGroup>

设置为 false 并且在 bean 中有 getter 和 setter,我想根据我的 p:dataTable 中的任何复选框是否被选中来切换其呈现的属性(或隐藏/显示它)。相反,如果我选中一个框并取消选中它,我希望能够隐藏按钮,因为没有选中任何复选框。

我的 p:dataTable 是这样设置的。

<p:dataTable id="someID"
    selection="#{myBean.mySelectList}"
    rowKey="#{myBean.id}">
    <p:column selectionMode="multiple" style="text-align:center"/>
....
</p:dataTable>

感谢任何帮助

【问题讨论】:

    标签: primefaces jsf-2.2


    【解决方案1】:

    简短答案:在选择多个项目时更新它。

    更长的答案:在每个选择中,更新服务器端的项目数(或仅计算列表)并在按钮的“渲染”属性中使用该值(检查是否> 0,或者执行该服务器端并使用一个布尔值)并在每次 ajax 调用时更新面板组,或者也从服务器执行此操作。

    使用 JSF 时的所有简单的“逻辑”,没什么特别的,没什么花哨的

    【讨论】:

    • 我如何跟踪每个选择?我看到有一个
    • 感谢您指导我解答
    • 我会在答案中添加一些内容
    猜你喜欢
    • 2013-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-21
    • 1970-01-01
    相关资源
    最近更新 更多