我试图从我的bean中获取选定的行索引。
在backingbean中,我使用监听器
public void updateCurrent()
{
int rowIndex = dataTable.getRowIndex();
...
}
但我在rowIndex 中总是得到-1
在p:dataTable中,我尝试处理我的dataTable,并在选择行上调用监听器
<p:ajax event="rowSelect" listener="#{locationBean.updateCurrent}"
process=":mainTab:mainLocationForm:mainLocationTable"/>
PrimeFaces版本-3.4
请帮助获取所选行索引。谢谢
我不太确定您的方法是否是检索rowIndex的正确方法。不知怎的,浏览器和服务器需要同步(在浏览器中)当前选定的行,我不知道这是怎么回事。
也许可以/应该通过使用侦听器参数org.primefaces.event.SelectEvent
来进行不同的操作
您可以将public void updateCurrent()
方法扩展为:
public void updateCurrent(SelectEvent mySelectEvent) {
// use the mySelectEvent.getObject() method in here and
// check what this object has to offer
}
我还没有尝试过,因此无法验证您获得的对象是否具有rowIndex(不知何故)。但你自己可以很容易地尝试一下。
编辑:也可以看看这个问题和balusC的答案:如何在JSF数据表中获取选定的行索引?