包装背后DataTable的集合
value中的一个
DataModel<E>。
private List<Item> items;private DataModel<Item> model; // +getter@PostConstructpublic void init() { this.items = loadItSomehow(); this.model = new ListDataModel<Item>(items);}(在Item
本例中为只是表示每行的JavaBean类,例如Person
,Product
等)
而是将其绑定到数据表
value。
<h:dataTable value="#{bean.model}" var="item">如果下拉列表绑定到
Item同一bean 的属性,而按钮绑定到同一bean的方法,则…
<h:column> <h:selectoneMenu value="#{item.value}"> <f:selectItems value="#{bean.values}" /> </h:selectOneMenu></h:column><h:column> <h:commandButton value="submit" action="#{bean.submit}" /></h:column>…然后,您可以
DataModel#getRowData()按如下方式在操作方法中通过选择的值来抓取当前项目:
public void submit() { Item item = model.getRowData(); String value = item.getValue(); // ...}


