如何根据 p:datatable 中的复选框选择 show/hide p:button?
How to show/hide a p:button based on a checkbox selection inside a p:datatable?
我有一个简单的按钮,
<h:panelGroup>
<p:commandButton rendered="#{myBean.checkboxSelected}" value="Action" />
</h:panelGroup>
设置为 false 并且在 bean 中有 getter 和 setter,我想根据我的 p:dataTable 中的任何复选框是否被选中来切换它的渲染属性(或 hide/show 它) .相反,如果我选中一个框然后取消选中它,我希望能够隐藏按钮,因为没有选中任何复选框。
我的p:dataTable是这样设置的
<p:dataTable id="someID"
selection="#{myBean.mySelectList}"
rowKey="#{myBean.id}">
<p:column selectionMode="multiple" style="text-align:center"/>
....
</p:dataTable>
感谢任何帮助
简短答案:选择多个项目时进行更新。
更长的答案:在每次选择时,更新服务器端的项目数(或只计算列表)并在按钮的 'rendered' 属性中使用该值(检查是否 > 0,或者这样做服务器端并使用布尔值)并在每次 ajax 调用时更新面板组,或者也从服务器执行此操作。
使用 JSF 时很普通 'logic',没什么特别的,没什么特别的
我有一个简单的按钮,
<h:panelGroup>
<p:commandButton rendered="#{myBean.checkboxSelected}" value="Action" />
</h:panelGroup>
设置为 false 并且在 bean 中有 getter 和 setter,我想根据我的 p:dataTable 中的任何复选框是否被选中来切换它的渲染属性(或 hide/show 它) .相反,如果我选中一个框然后取消选中它,我希望能够隐藏按钮,因为没有选中任何复选框。
我的p:dataTable是这样设置的
<p:dataTable id="someID"
selection="#{myBean.mySelectList}"
rowKey="#{myBean.id}">
<p:column selectionMode="multiple" style="text-align:center"/>
....
</p:dataTable>
感谢任何帮助
简短答案:选择多个项目时进行更新。
更长的答案:在每次选择时,更新服务器端的项目数(或只计算列表)并在按钮的 'rendered' 属性中使用该值(检查是否 > 0,或者这样做服务器端并使用布尔值)并在每次 ajax 调用时更新面板组,或者也从服务器执行此操作。
使用 JSF 时很普通 'logic',没什么特别的,没什么特别的