InputText 不发送新值

InputText not sending new values

我有一个简单的 inputText,我通过从对象获取它来设置默认值。编辑 inputTexts 值后,我按下一个按钮,调用 bean 中的保存方法。我希望 inputText 能够理解我更改了它的值,并且会在我编辑它时更改对象值。事实证明,我得到的是旧值,而不是 bean 中的新值(编辑过的值)。

也许您知道这个问题的主要原因是什么?

这是我的输入文本:

<h:inputText value="#{associationBean.counterTypeView.name}"
    id="ctpName" maxlength="100" 
    validatorMessage="#{msg['classifier.nameRequire']}">
    <f:validateRequired />
    <rich:validator />
</h:inputText>

像这样在您的 inputText 控件中插入 <a4j:ajax execute="@this"/>

<h:inputText value="#{associationBean.counterTypeView.name}" 
     id="ctpName" 
     maxlength="100" 
     validatorMessage="#{msg['classifier.nameRequire']}"> 
          <f:validateRequired /> 
          <rich:validator />
          <a4j:ajax execute="@this" />
</h:inputText>

您可以像这样在 h:inputText 标签内使用 JSF ajax

<h:inputText value="#{associationBean.counterTypeView.name}" 
     id="ctpName" 
     maxlength="100" 
      validatorMessage="#{msg['classifier.nameRequire']}"> 
          <f:validateRequired /> 
          <rich:validator />
          <f:ajax   event="blur"/>
</h:inputText>

这是,在输入文本的模糊事件中,将调用 Ajax 并且您的新数据将保存在指定的 bean 中