我在表单中有一些输入字段,使用“保存”按钮提交,并且有一个“清除”按钮,使用clear方法清除输入字段,使用setSubmittedValue(“”)清除值;
顶部有一个selectonemenu,带有一个valueChangeListener,它调用backing bean中的一个方法,为selectonemenu的某个值添加一组额外的输入字段。(该字段有ajax)
首先,我在输入字段中输入一些值(无效),然后单击“保存”以使验证失败并显示错误消息。 然后我单击清除以清除输入字段并清除它们。
现在,如果我点击selectonemenu更改其值,输入字段将显示我输入的无效值。
有没有办法解决这个问题?
答案 0 :(得分:1)
您已使用空字符串而不是null
设置提交的值。这样它将在渲染期间显示而不是本地值。但是,在随后的请求中,它再次变为null
,而是显示本地值。
清除按钮应该调用EditableValueHolder#resetValue()
而不是EditableValueHolder#setSubmittedValue()
。