Omnifaces Ajax validateMultiple 清除输入

Omnifaces Ajax validateMultiple clears inputs

我正在尝试使用 validateMultiple 来验证两个字段。但是,当验证失败时,它会清除两个字段:

     <p:inputText value="#{bmiBean.height}" required="true" id="height" style="width:40px;">
                <p:ajax update="bmiPanel" process="bmiValidator" />
    </p:inputText>
    <p:inputText value="#{bmiCalculatorBean.weight}" required="true" id="weight" >
        <p:ajax update="bmiPanel" process="bmiValidator" />
        <f:convertNumber pattern="0" />
     </p:inputText>


    <o:validateMultiple id="bmiValidator" components="weight height" validator="#{bmiBean.validate}" message="Your BMI is not high enough"
                />


    <p:message for="bmiValidator" id="msgBmiValidatorQuestion" />

理想情况下,我希望设置高度和重量属性,以便在用户刷新页面时它们仍然存在。

您忘记自己处理输入。

<p:ajax update="bmiPanel" process="bmiValidator" />

更改它以包括输入的客户端 ID。我假设 bmiPanel 已经涵盖了它们:

<p:ajax update="bmiPanel" process="bmiPanel" />

另请参阅:

  • Understanding PrimeFaces process/update and JSF f:ajax execute/render attributes