【发布时间】:2013-09-20 05:25:16
【问题描述】:
我有一个数据表,里面有命令按钮作为列。我想在选择和取消选择时更改命令按钮的颜色。例如,未选中/取消选中时为红色,选中时为绿色。
我的数据表看起来像:
<p:dataTable id="interfaces"
value="#{studentBean.studentDataModel}"
var="studentDetails" emptyMessage="No Student found."
selection="#{studentBean.selectedStudents}" >
<p:column headerText="Select this Student" style="width:1%">
<p:commandButton value="Select"
action="#{studentBean.saveThisStudent}"
styleClass="non-selected-button-background-color">
</p:commandButton>
</p:column>
</p:dataTable>
下面是我在 default.css 中的内容
.non-selected-button-background-color {
background-color: blue
}
.selected-button-background-color {
background-color: green
}
现在我该如何实现这个功能?
更新了功能:
1) 所有命令按钮最初都是蓝色
2)一旦我点击一个按钮,它的颜色应该变成绿色
3) 再次单击同一个按钮,颜色应变为蓝色
4)点击另一个按钮将在下面工作--
- 如果有绿色的按钮,先把它变成蓝色
- 然后将点击按钮的颜色更改为绿色。
【问题讨论】:
-
请定义“选择”和“取消选择”。这在这个问题中是模棱两可的,因为您使用的是
<p:dataTable selection>而没有<p:column selectionMode>这令人困惑。你在用<p:column selectionMode>吗?或者你的意思是按钮本身应该作为一个开关?请明确说明 UI 要求。 -
@BalusC:很抱歉这个问题。现在更新了要求
标签: jquery css jsf primefaces datatable