h:inputText为空时未调用ajax

时间:2014-05-22 11:11:33

标签: jsf-2

我的屏幕上有一个输入文本框和一个按钮。我想只在输入Text有一些值时启用按钮。我已经实现了以下代码,当我输入一些值并启用按钮时它正常工作。但是当我从输入文本中删除字符串时没有进行ajax调用,因此即使我没有任何值,也会启用按钮。

我尝试的代码是

 <h:inputText id="inputText" value="#{bean.value1}" label="Value1" required="true"       
    requiredMessage="value is empty" class="form-control">

    <f:ajax event="keyup" render="clearButton"></f:ajax>

  </h:inputText>

1 个答案:

答案 0 :(得分:3)

尝试此代码时没有必要的真实

<h:inputText id="inputText" value="#{bean.value1}" label="Value1" class="form-control">
   <f:ajax event="keyup" render="clearButton"></f:ajax>
</h:inputText>

如果这解决了您的问题,您可以在http://docs.oracle.com/javaee/1.4/tutorial/doc/JSFIntro10.html

中查看更多相关信息

这是JSF生命周期的一个问题,当你设置所需的类似true并且输入没有值时,你的方法永远不会被调用。

此外,您可以尝试立即标记,以忽略验证阶段。