我想构建一个表格,该表格可以根据其他组件的状态动态更改可见的组件。
例如,…有一些文本框和一些复选框,并且如果用户激活了某个复选框,则应该出现一堆其他输入元素。
我可以使用JSF 2.0 + Tomahawk来做到这一点吗,还是必须让另一个库来做到这一点?我该怎么办呢?没有AJAX,这将无法工作,对吗?
提前致谢!
Ajax是实现此目的的便捷方法,而JSF 2.0捆绑了ajax。
这是一个例子:
<h:selectOneRadio value="#{a7.myCheckbox.state}"> <f:selectItem itemLabel="#{bundle.yes}" itemValue="1"/> <f:selectItem itemLabel="#{bundle.no}" itemValue="0"/> <f:ajax render="uawGroup"/> </h:selectOneRadio> <h:panelGroup id="uawGroup" layout="block"> <h:outputText value="#{bundle.wichmed}" rendered="#{a7.myCheckbox.state == 1}"/> <h:inputText value="#{}" id="myInput" rendered="#{a7.myCheckbox.state == 1}"/> </h:panelGroup>
h:panelGroup当单击“是”选项时,将呈现。h:selectOneRadio(itemValue == 1)。最初它是0(在bean“ a7”中设置)。
h:panelGroup
h:selectOneRadio
该h:panelGroup起包装,因为你只能更新实际上呈现在页面上(与AJAX组件h:outputText和h:inputText最初不显示)。
h:outputText
h:inputText