我正在使用带有Mojarra / Tomcat 7.0.29的PF 3.4中的单元内可编辑数据表。
我的问题是我正在对输入文本应用验证,效果很好。我唯一的问题是在验证失败后,单元格被标记为红色。即使我关闭(即单击取消按钮)可编辑模式,下次我尝试进入编辑模式时它仍然是红色。我需要在 之后删除红色突出显示 我关闭了可编辑模式。
它主要是一个美容问题,因为一切都很好。
有什么想法吗?
到目前为止,我已经在验证程序中对组件尝试了setValid(true)
,但它似乎没什么帮助。
答案 0 :(得分:2)
您需要的组件是ResetInput。
当验证失败时,输入组件将其本地值保持在状态。 ResetInput用于清除状态中的缓存值,以便组件从支持bean模型中检索它们的值。
将重置输入组件附加到动作以重置另一个组件状态
<p:commandButton ....>
<p:resetInput target="input1" />
</p:commandButton>
另一种解决方案是使用PrimeFaces Extensions中的ResetInput,它也支持event
属性。通过这种方式,您可以直接将rowEditCancel
与resetInput
连接起来:
<p:ajax event="rowEditCancel"/>
<pe:resetInput event="rowEditCancel" for="input1"/>