頁籤的使用方法一直沒有紀錄,在此更新一下。

首先必須要有一個做為頁籤的JSP檔,通常設定為XXX_tabs.jsp

 

內容如以下所示;

 

<portlet:renderURL var="tabsURL">
<portlet:param name="mvcPath" value="/html/isu_ocw_courseAssort/course_assort_tabs.jsp" />
</portlet:renderURL>

以上是頁籤重整時導向的網頁,在這裡就是指同一頁。

 

<div class="view-wrapper">

內容包在這個DIV之中,接下來是控制的java檔;

 

<%


String tabNames = "新增分類,新增子分類";
String[] tabs1NamesArray = StringUtil.split(tabNames);
String tabs1Default = preferences.getValue("Sample Tab 1", tabs1NamesArray[0]);

String tabs1 = ParamUtil.getString(request, "tabs1", tabs1Default);

%>

以上第一行是為頁籤設定的分類名稱,並存在陣列當中,後面兩行是擷取及交換資料的request方法。

 

接下來就可以設定頁籤了;

<liferay-ui:tabs
names="<%= tabNames %>"
url="<%= tabsURL.toString() %>"
value="<%= tabs1 %>"
refresh="true"
/>

names便是前面設定的那堆名稱,url便是要導向的網頁,取的值就是tabs設定的名稱。

接下來就是choose的判斷標籤;


<c:choose>
<c:when test='<%= tabs1.equals("新增分類") %>'>
<%@ include file="/html/isu_ocw_courseAssort/course_assort.jsp" %>
</c:when>
<c:when test='<%= tabs1.equals("新增子分類") %>'>
<%@ include file="/html/isu_ocw_courseAssort/course_assort_secondary.jsp" %>
</c:when>
</c:choose>
</div>

當選擇的標籤符合文字時,便嵌入相對應的jsp頁面,完成之後應該長得像這樣;

 

多國語言效果  

嗯...這邊借用一下多國語言的圖,到這裡頁籤就完成了!

 

3/5日新增  如果要在configuration頁面新增多重頁籤的做法

 

<liferay-portlet:renderURL portletConfiguration="true" var="portletURL">
<portlet:param name="tabs2" value="<%=tabs2%>" />
<portlet:param name="redirect" value="<%=redirect%>" />
</liferay-portlet:renderURL>

 

以上便是製造一個renderURL讓頁籤指回同一頁;

 

<liferay-ui:tabs names="基本設定,條件篩選設定" param="tabs2"
url="<%=portletURL%>" />

 

這樣便會指回同一頁,然後用choose判斷不同頁籤顯示對應的內容,內容直接寫在同一個jsp裡。

<liferay-ui:tabs names="基本設定,條件篩選設定" param="tabs2"
url="<%=portletURL%>" />

 

就像這樣,大致上就可以使用了。

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 squall75726 的頭像
    squall75726

    菜鳥工程師的Liferay Portal學習筆記

    squall75726 發表在 痞客邦 留言(0) 人氣()