2009-09-11 34 views
1

我有一張表,這是從舊的XML文件使用XLST生成的風格的頁面,這些文件「CANT」可以由我自己修改,但都有一個通用模板庫對他們...和所有使用goTab()函數來顯示或隱藏特定的divJavascript或jQuery傳遞ID值以顯示或隱藏選定的Div

<table cellspacing="0" cellpadding="0"> 
<tr> 
<td class="tab_active" id="tab_1" onclick="goTab(1)">Key Messages</td> 
<td class="tab" id="tab_2" onclick="goTab(2)">Links</td> 
<td class="tab" id="tab_3" onclick="goTab(3)">Red Flags</td> 
<td class="tab" id="tab_4" onclick="goTab(4)">Referral Pathway</td> 
<td class="tab" id="tab_5" onclick="goTab(5)">Clinical Data</td> 
<td class="tab" id="tab_6" onclick="goTab(6)">Past Medical/Family History</td> 
<td class="tab" id="tab_7" onclick="goTab(7)">Medication</td> 
<td class="tab" id="tab_8" onclick="goTab(8)">Risks/Alerts</td> 
<td class="tab" id="tab_9" onclick="goTab(9)">Demographics</td> 
<td class="tab" id="tab_10" onclick="goTab(10)">Referral</td> 
<td class="tab" id="tab_11" onclick="goTab(11)">Transport</td> 
</tr> 
</table> 

如果標籤已被點擊它會顯示/隱藏特定的div即:如果tab_1被點擊,則顯示「divTabControl_1」 ,其餘的(可以是不同數量的標籤& divs在每個文件上)

div的被編碼爲

<div class="categoryContent" id="divTabControl_1" style="visibility:visible;"> 
content here 
</div> 

我想遍歷每個找到「_標籤」 + tabID已經被點擊了哪個,然後使用我需要顯示或隱藏基於每個格內容..

再次,我不得不說,我不能編輯文件..喜歡做這在jQuery的功能,只是沒有得到的jQuery的理解還沒有做到這一點..

任何幫助將是巨大的..

謝謝

回答

1

如果我理解正確,您正在嘗試執行goTab功能。我對麼 ? 這是你想要實現的嗎?

function goTab(index) { 
    // Selector for the div to show (selected by id) 
    visibleDivSelector = "#divTabControl_" + index; 
    // Hide all divs with class "categoryContent" except the one to show 
    $("div.categoryContent:not(" + visibleDivSelector + ")").hide(); 
    // Show selected div 
    $(visibleDivSelector).show(); 
} 

編輯:你可能還想添加一些代碼來添加/刪除tab/tab_active類給你選項TD。

0
var previousElem = ""; 
    function goTab (tabID) 
    { 
     if (previousElem != "") 
     { 
      $("#divTabControl_" + previousElem).css ("visibility" , "hidden"); 
     } 
     $("#divTabControl_" + tabID).css ("visibility" , "visible"); 

     previousElem = tabID; 
    }