本文主要是介绍基于jsf的datatable多选操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
首先在页面上要使用Myfaces的一个taglib<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
然后在页面的<f:view>内部用
<t:saveState value="#{后台Bean}"></t:saveState>
下面是datatable的写法
<h:dataTable id="dt" value="#{后台Bean.resultList}" var="aaa"
binding="#{后台Bean.table}">//这里在后台bean中要有table属性,是UIData
类型的,提供get,set方法
<h:column>
<f:facet name="header">
<h:outputText value="序号" />
</f:facet>
<center>
<h:selectBooleanCheckbox value="#{后台Bean.selectTable[后台
Bean.table.rowIndex]}" />//这里在后台bean中要有selectTable这个属性
<h:outputText value="#{后台Bean.table.rowIndex+1}" />
</center>
</h:column>
后台bean的写法
public class 后台Bean{
private UIData table;
private boolean[] selectTable;
private List list;
@PersistenceContext
private EntityManager em;
public List getResultList(){
list = 调用ejb的方法得到list的结果
selectTable = new boolean[list.size()];//给变量初始化是在此位置
return list;
}
public String deleteAction(){
for(int i = 0; i < selectTable.length; i++){
if(selectTable[i]){
em.remove(list.get(i));
}
}
return "success";
}
}
这篇关于基于jsf的datatable多选操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!