2011-04-18 22 views
1

我有一個頁面命名爲Tabview1它由tabview組成。如何轉發到一個新的頁面點擊一個tabview的標籤

Tabview1.xhtml: 
     <p:tabView> 
      <p:tab title="1"> 
       <ui:include src="/Apanel.xhtml"/> 
      </p:tab> 
      <p:tab title="2"> 
      </p:tab> 
      <p:tab title="3"> 
      </p:tab> 
     </p:tabView> 

我想轉發給頁面Tabview2.xhtml如果單擊名爲選項卡上。

Tabview2.xhtml: 
     <p:tabView> 
      <p:tab title="1"> 
      </p:tab> 
      <p:tab title="2"> 
       <ui:include src="/Bpanel.xhtml"/> 
      </p:tab> 
      <p:tab title="3"> 
      </p:tab> 
     </p:tabView> 

誰能幫幫我?

回答

0

Tabview爲每個選項卡創建一個包含一個元素的列表。每個<li>包含一個<a href="#j_idtXXX">。在您的網站上創建一個腳本,將這些鏈接更改爲Tabview2.xhtml。例如,如果您在TabView的的ID設置爲「TabView的」:

jQuery("#tabview ul a").first().attr("href", /MyPortal/Tabview2.jsf?tab=0); 

這將導致第一個選項卡將導致新的頁面,並選擇頁面右側選項卡,如果你配置了viewparam和在tabview上設置activeIndex="#{controllerClass.activeIndex}"

我現在很忙,所以我只有時間寫一個簡短的例子,但如果你有一些JavaScript技巧,它不應該太難。

+0

您的解決方案不起作用。我可以更改li元素中包含的'a'元素中的'href'屬性。但點擊不會將用戶傳送到新頁面。默認動作必須通過JS重寫才能被觸發。 – nespapu 2015-11-27 07:48:05

0
   <p:tabView> 
      <p:tab title="Title1"> 
       <p:panel> 
       <ui:include src="tabView1.xhtml" /> 
       </p:panel> 
      </p:tab> 
      <p:tab title="Title 2"> 
       <p:panel> 
       <ui:include src="tabView2.xhtml" /> 
       </p:panel> 
      </p:tab>   
     </p:tabView> 
+0

你應該重新解釋一下如何解決這個問題。 – petric 2013-06-28 10:18:30

相關問題