2012-10-01 27 views
0

我使用的是Oracle APEX 4.1.1如何禁用1到N選項卡中的Oracle APEX

希望有人可以幫助,但我目前有6個選項卡,即TAB1,TAB2等。

當用戶首先登錄到我的應用程序的開始頁面,即Tab1,在這種情況下,所有其他Tabs,Tab2,Tab3等也會呈現給用戶。

目前,用戶可以點擊這些標籤中的任何一個,但由於駕駛屏幕實際上來自Tab1,因此不會向用戶呈現數據。所以基本上,當用戶點擊Tab1上的鏈接時,與該ID相關的所有信息將檢索所有其他選項卡的所有信息。所以一切都與Tab1有關。

現在在ApEx中,是否有一種禁用實際選項卡(從選項卡集)的方法,這將阻止用戶單擊這些選項卡,直到從Tab1中實際選擇一條記錄爲止,然後啓用從Tab2到Tab6剩下的選項卡?

此外,當用戶再次返回到Tab1時,我想清除Tab2到Tab6中的所有數據,並再次禁用這些標籤。

任何幫助將不勝感激。

謝謝。

回答

1

我實際上只是調整標籤上的顯示條件。使用應用程序項目或使用您在第2-6頁中提到的來自第1頁的頁面項目。當你點擊這樣一個鏈接時,頁面1必須被提交,所以標籤將被渲染。
至於清除,你可以設置一個before-header計算來始終將該項目設置爲NULL。

好吧,所以上面可能是最快最簡單的,但從您的評論下面我更好地理解你的問題。

例加價爲主題21

<ul id="tabs"> 
    <li class="first-non-current"> 
    <a href="javascript:apex.submit('T_TAB_1');" class="tab_link"><span></span>Tab 1</a> 
    </li> 
    <li class="non-current"> 
    <a href="javascript:apex.submit('T_TAB_2');" class="tab_link"><span></span>Tab 2</a> 
    </li> 
    <li class="current"> 
    <a href="javascript:apex.submit('T_TAB_3');" class="tab_link"><span></span>Tab 3</a> 
    </li> 
    <li class="non-current"> 
    <a href="javascript:apex.submit('T_TAB_4');" class="tab_link"><span></span>Tab 4</a> 
    </li> 
    <li class="last"><span></span></li> 
</ul> 

所以,當你第1頁這是標籤1,你可以改變如何標籤2和標籤3的外觀和行爲,基於類的LI元素。使用javascript來禁用非當前選項卡上的a-tags的默認行爲,並使用css來改變外觀(我不打算在這裏提到:太多了,而且對於一個主題非常具體。通過螢火蟲的CSS,或看圖像文件夾中的主題CSS!)

+0

不用擔心湯姆 - 聽起來不錯。我打算採用這種方法開始並且現在就會這樣做,但是想知道實際上有一種禁用選項卡的方法,只是向用戶顯示它們存在。謝謝。 – tonyf

+0

問題在於標籤生成的標記在這方面確實是準系統/不好的。沒有標識或標籤在html元素中(除了javascript部分中的標籤標籤,但我甚至不會推薦它,因爲醜!),只有當前和非當前標籤的類。也許你可以用第1頁上的非當前標籤來解決JavaScript問題。儘管如此,請記住你的主題:標籤有圖像的主題,但可行! – Tom

+0

添加了一些代碼來澄清 – Tom