在选择h:selectOneMenu时显示/隐藏h:inputText

时间:2012-01-13 12:22:59

标签: java jsf ajax4jsf

我正在使用JSF 1.1和Ajax4jsf。我想在名为“Colors”的<h:inputText>元素的更改值上显示/隐藏<h:selectOneMenu>

例如,如果我在<h:selectOneMenu>中选择“红色”值,则在<h:inputText>(高,中,低)中选择的颜色强度显示<h:selectOneMenu>。< / p>

我不确定是使用Ajax4jsf还是纯JavaScript。我更喜欢使用Ajax4jsf,但它太基本了。

1 个答案:

答案 0 :(得分:1)

看看<a4j:support/>。此标记使您能够处理各种客户端事件,包括onchange事件。

考虑一个例子(取自上面的链接):

<h:form id="planetsForm">
  <h:outputLabel value="Select the planet:" for="planets" />

  <h:selectOneMenu id="planets" value="#{planetsMoons.currentPlanet}" valueChangeListener="#{planetsMoons.planetChanged}">
      <f:selectItems value="#{planetsMoons.planetsList}" />
      <a4j:support event="onchange" reRender="moons" />
  </h:selectOneMenu>

  <h:dataTable id="moons" value="#{planetsMoons.moonsList}" var="item">
     <h:column>
        <h:outputText value="#{item}"/>
     </h:column>
  </h:dataTable> 
</h:form>