我在 PF 3.4 中使用 Mojarra/Tomcat 7.0.29 中的单元内可编辑数据表。
我的问题是我正在对输入文本应用验证,效果很好。我唯一的问题是验证失败后,单元格被标记为红色。即使我关闭(即单击取消按钮)可编辑模式,下次我尝试进入编辑模式时它仍然是红色的。关闭可编辑模式后,我需要删除红色突出显示。
它主要是一个外观问题,因为一切正常。
有任何想法吗?
到目前为止,我已经setValid(true)
在我的验证器中尝试了该组件,但它似乎没有多大帮助。
我在 PF 3.4 中使用 Mojarra/Tomcat 7.0.29 中的单元内可编辑数据表。
我的问题是我正在对输入文本应用验证,效果很好。我唯一的问题是验证失败后,单元格被标记为红色。即使我关闭(即单击取消按钮)可编辑模式,下次我尝试进入编辑模式时它仍然是红色的。关闭可编辑模式后,我需要删除红色突出显示。
它主要是一个外观问题,因为一切正常。
有任何想法吗?
到目前为止,我已经setValid(true)
在我的验证器中尝试了该组件,但它似乎没有多大帮助。
您需要的组件是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"/>