【发布时间】:2014-03-24 13:43:47
【问题描述】:
简而言之,在一个 jsf 页面中,我有 2 个rich:dataTable。
第一个在页面的 onLoad 事件中加载。
在第一个中单击一行时会加载第二个。
两个表都有一个rich:dataScroller。
一切正常,只是我不知道如何使 dataScroller 的 actionListener 工作。
基本上我有
<rich:collapsiblePanel>
<h:form>
<h:panelGroup id="table1">
<rich:dataTable>
<f:facet name="header">
</f:facet>
<rich:column>
</rich:column>
<f:facet name="footer">
<rich:dataScroller reRender="table1,table2" page="1" actionListener="#{mybean.ac}"/>
</f:facet>
</rich:dataTable>
</h:panelGroup>
<h:panelGroup id="table2">
<rich:dataTable rendered="#{myBean.rowSelected != null}">
<f:facet name="header">
</f:facet>
<rich:column>
</rich:column>
<f:facet name="footer">
<rich:dataScroller reRender="table1" page="1" />
</f:facet>
</rich:dataTable>
</h:panelGroup>
</h:form>
</rich:collapsiblePanel>
在我的豆子里有
Long rowSelected;
public void ac()
{
rowSelected = null;
System.out.println("xxxxxxxxxxxxxxxxxxxxxxxxxx");
}
但无事可做,从未成功过。
我也试过了,没有任何区别
public void ac(ActionEvent ae) - using javax.faces.event.ActionEvent
和
action="#{mybean.ac}"
【问题讨论】: