在特定行启用或禁用 primefaces 数据表按钮
Posted
技术标签:
【中文标题】在特定行启用或禁用 primefaces 数据表按钮【英文标题】:Enable or disable primefaces datatable buttons at the certain row 【发布时间】:2013-09-11 12:05:04 【问题描述】:PrimeFaces 3.5 莫哈拉 2.1.5 JDK 1.6
当我的数据表正在加载时,我需要在同一行的同一列中启用或禁用两个按钮。
即当数据表加载第一行时,我必须启用向下按钮并禁用向上按钮。 当数据表加载第二行直到最后一行 -1 时,我必须启用两个按钮。 当数据表加载最后一行时,我需要启用向上按钮并禁用向下按钮。
我尝试读取 List 对象并启用、禁用,但它为所有行设置了启用或禁用。
我将不胜感激。提前谢谢...
【问题讨论】:
【参考方案1】:您可以使用rowIndexVar
类似这样的:
<p:dataTable value="#myBean.myRows" rowIndexVar="myRowIndex" var="myRow">
<p:column headerText="#">
<h:commandLink styleClass="upArrow" disabled="#myRowIndex eq 0"/>
<h:commandLink styleClass="downArrow"
disabled="#myRowIndex eq myBean.myRows.size()"/>
</p:column>
</p:dataTable>
【讨论】:
非常感谢@Daniel,它按预期工作。唯一的提示是 size() 方法在禁用的 el 表达式中不起作用。我必须创建 getter/setter,即在 Down button 中: disabled="#myRowIndex eq .myBean.varList 和 backing bean varList = dataTableList.size()-1以上是关于在特定行启用或禁用 primefaces 数据表按钮的主要内容,如果未能解决你的问题,请参考以下文章
如何使用p:selectBooleanCheckbox切换禁用/启用PrimeFaces组件
如何启用或禁用特定 ViewController 的横向模式?