【问题标题】:Input fields get local values even after clearing输入字段即使在清除后也会获得本地值
【发布时间】:2012-02-24 04:33:27
【问题描述】:

我在表单中有几个输入字段是使用保存按钮提交的,并且有一个清除按钮可以使用 clear 方法清除输入字段,该方法使用 setSubmittedValue(""); 清除值

顶部有一个带有valueChangeListener的selectonemenu,它调用backing bean中的一个方法为selectonemenu的某个值添加一组额外的输入字段。(这个字段有ajax)

首先,我在输入字段中输入一些值(无效)并单击“保存”,这样验证失败并显示错误消息。 然后我单击清除以清除输入字段并且它们会清除。

现在,如果我单击 selectonemenu 更改其值,输入字段会显示我输入的无效值。

有没有办法解决这个问题?

【问题讨论】:

    标签: jsf-2


    【解决方案1】:

    您已将提交的值设置为空字符串,而不是 null。这样,它将在渲染期间显示而不是本地值。但是,在随后的请求中,它再次变为null,并且将显示本地值。

    清除按钮应该调用EditableValueHolder#resetValue()而不是EditableValueHolder#setSubmittedValue()

    【讨论】:

    • 当我更改selectonemenu时清除bean值以及本地值时它可以工作,感谢您的回答......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-21
    相关资源
    最近更新 更多