首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

PrimeFaces 3.0 JSF 开发笔记——tabview

2012-06-27 
PrimeFaces 3.0 JSF 开发札记——tabview1. Tab标签的使用?? ?用法:???p:tabView idtabView dynamictr

PrimeFaces 3.0 JSF 开发札记——tabview

1. Tab标签的使用

?? ?用法:

???<p:tabView id="tabView" dynamic="true" cache="false">

<p:ajax event="tabChange"  listener="#manageTableBean.onReportSettingChange}" update="tableList" /> <p:tab id="modelTab" title="第一步:模型">content         </p:tab><p:tab id="modelTab2" title="第二步:模型">content
         </p:tab>
</p:tabView>

??在ManageTableBean中需要 存在onReportSettingChange(TabChangeEvent event)

?

public void onReportSettingChange(TabChangeEvent event) {        FacesMessage msg = new FacesMessage("Tab Changed", "Active Tab: " + event.getTab().getClientId());        if(event.getTab().getClientId().lastIndexOf("tableTab")>0){       .............//省略     }}

?但是如果在modelTab 中嵌套一个tabView时,在modelTab2和modelTab切换时会导致,

调用内层次嵌套的方法(假如内层的lisener=“#manageTableBean.onReportSettingChange2}”)的

onReportSettingChange2.

?

而onReportSettingChange2方法的参数为AjaxBehaviorEvent 的子类TabChangeEvent。

框架会提示找不到方法的异常。解决办法:

内层方法重载一个不同参数的。

代码如下

?

public void onReportSettingChange2(AjaxBehaviorEvent event) {        FacesMessage msg = new FacesMessage("Tab Changed", "Active Tab: " + event.getTab().getClientId());        if(event.getTab().getClientId().lastIndexOf("tableTab")>0){       .............//省略     }}public void onReportSettingChange2(TabChangeEvent event) {      }
?

?

?

?

热点排行