【发布时间】:2023-03-27 19:25:01
【问题描述】:
考虑以下情况: 表中存在标签为“X”的列。 X 包含一个复选框,可以选中或取消选中。更准确地说是代码:
<h:form id="form">
<rich:dataTable id="table"
<rich:column>
<f:facet name="header">
<h:outputLabel value="X" />
</f:facet>
<h:selectBooleanCheckbox id="x" readonly="true"
disabled="true"
value="#{some condition}"
styleClass="#{foo() ? 'inputChanged' : '' center" />
.
.
.
我遇到的问题是: 决定复选框是否被选中还不是很清楚。问题是,必须禁用该复选框,否则它会获得焦点并且可以单击该复选框。即使这对后端的数据没有任何影响,我也不希望这种情况发生。客户告诉我,复选框是否被标记,你不能很好地决定。
有没有办法在用户无法进行任何更改时不禁用复选框?或者您有其他想法如何让客户更容易看到它?
【问题讨论】:
-
复选框不能只读,因为它不是值变化,而是状态变化。没有任何干净的解决方案我认为这个问题已经在这里得到了回答,除非我遗漏了什么:stackoverflow.com/questions/155291/…
-
好的,那么让我们做一个解决方法。是否可以为禁用的复选框重新定义“禁用”?例如。让它们变红什么的。我尝试了 css,但遗憾的是没有任何进展。
-
我在 .css 中添加了以下内容: input[type="checkbox"][disabled] { background: white; size="100000";} 这完全没有影响...