如何从datatable移交row对象

问题描述 投票:1回答:2

我有一个包含大量条目的PrimeFaces DataTable。当我点击一行时,我在这里执行此操作:

<p:ajax event="rowSelect" listener="#{detailsBean.showData(data)}">

所以我想做的是在我的bean中调用一个方法并从被点击的表行中移交数据,但是当我调试它时,该对象始终为null。我不知道如何处理这件事。怎么了?

java jsf primefaces
2个回答
2
投票

这是我从datatable获取所选项目的方法

XHTML:

<p:datatable value="#{yourBean.listObject}" selection="single" ---- and other suff---->

    <p:ajax event="rowSelect" listener=#"{yourBean.aMethodInBean}"/>

</p:datatable>

豆:

YourObject yourObject;
List<YourObject> listObject;
-----
public void aMethodInBean(SelectEvent event) {
    yourObject = (YourObject) event.getObject();
}

1
投票

XHTML:

<p:dataTable    value="#{bean.list}" selectionMode="single" selection="{bean.selectedEmployee}">

      <p:ajax event="rowSelect"  listener="#{bean.anyMethod()}"/>

</p:dataTable>

这里ajax不是强制性的

豆 :

 List<Employee> list ;
 Employee selectedEmployee;


 public void anyMethod(){

 }
© www.soinside.com 2019 - 2024. All rights reserved.