我有一个jsf页面,它在第一次加载页面时成功地从我的数据bean中提取数据。
我想要的是数据表使用来自jsf中inputText组件的文本输入,然后在调用jsf-bean和生成表时使用它。
我该怎么做?
具体来说,我想要的是
- 从inputText JSF组件获取文本输入
- 单击commandButton JSF组件
-
使用inputText作为参数并使用bean调用更新dataTable
<h:dataTable value="#{movie.getSearchMovieList('car')}" var="c" styleClass="order-table" headerClass="order-table-header" rowClasses="order-table-odd-row,order-table-even-row" > <h:column> <f:facet name="header"> Movie ID </f:facet> #{c.itemid} </h:column> <h:column> <f:facet name="header"> Title </f:facet> #{c.title} </h:column> </h:dataTable>
在托管bean中创建一个字段,以在导航时保存默认值:
private String filter = "car"; // + getter/setter
然后,在视图中:
<h:form>
<h:inputText label="Type search filter :" value="#{movie.filter}" />
<h:dataTable value="#{movie.getSearchMovieList(movie.filter)}" var="c" ... >
...
</h:dataTable>
<h:commandButton value="Search" /> // no action attribute means refreshing
<h:form>