可能不是JSF问题,但JSF专家会知道这可能更多 我在表单上有一些字段,根据一些ajax请求启用了禁用。我想在禁用时将它们显示为灰色。
让我知道您需要查看代码,但只需使用简单的
<f:ajax event="keydown" execute="@this" render="field1 field2" />
字段1有
disabled="#{not empty someBean.someProperty}"
CSS
#content input .disabled {color: #DCDAD1; padding: 2px; margin: 0 0 0 0;background-image=""}
禁用自身工作正常,但不会变得灰暗
如果JSF标记不正确,请
感谢和applogies答案 0 :(得分:15)
JSF输入组件的disabled
属性不会发出类似class="disabled"
之类的样式类,或类似CSS声明所期望的样式类。它只是在生成的HTML元素上设置HTML标准disabled
属性。要亲眼看到它,请在您喜欢的浏览器中打开JSF页面,右键单击查看源。它看起来像
<input type="text" disabled="disabled" />
您需要使用CSS属性选择器element[attrname]
。如果attrname
上包含element
的属性,则会应用该样式。
#content input[disabled] {
color: #DCDAD1;
padding: 2px;
margin: 0 0 0 0;
background-image: none;
}
(请注意,我修正了background-image
声明,但声明无效)