2013-07-11 41 views
2

我有一個應用程序,我在使用Bootstrap nag-tabs來表示一些相互關聯的內容。我正在努力做到這一點,當熱重新加載時,最後選擇的選項卡被重新選中。我也試圖這樣做,以便在用戶返回頁面後重新選擇最後選定的選項卡。這裏是模板:Bootstrap製表符和流星

<template name='admin'> 
    <ul id='adminTabs' class='nav nav-tabs'> 
     {{#if isInRole 'admin'}} 
     <li class='active'><a href='#districtstab' data-toggle='tab'>Districts</a></li> 
     {{/if}} 

     {{#if isInRole 'admin, manage-users'}} 
     <li><a href='#usertab' data-toggle='tab'>Users</a></li> 
     {{/if}} 

     {{#if isInRole 'admin, manage-schools'}} 
     <li><a href='#schoolstab' data-toggle='tab'>Schools</a></li> 
     {{/if}} 

     {{#if isInRole 'admin, manage-classes'}} 
     <li><a href='#classestab' data-toggle='tab'>Classes</a></li> 
     {{/if}} 

     {{#if isInRole 'admin, manage-lessons'}} 
     <li><a href='#lessonstab' data-toggle='tab'>Lessons</a></li> 
     {{/if}} 

     {{>onlineuserstab}} 

    </ul> 
    <div class='tab-content'> 
     {{#if isInRole 'admin'}} 
     {{#isolate}} 
     <div class='tab-pane active' id='districtstab'> 
     {{>districts}} 
     </div> 
     {{/isolate}} 
     {{/if}} 

     {{#if isInRole 'admin, manage-users'}} 
     {{#isolate}} 
     <div class='tab-pane' id='usertab'> 
     {{>users}} 
     </div> 
     {{/isolate}} 
     {{/if}} 

     {{#if isInRole 'admin, manage-schools'}} 
     {{#isolate}}  
     <div class='tab-pane' id='schoolstab'> 
     {{>schools}} 
     </div> 
     {{/isolate}} 
     {{/if}} 

     {{#if isInRole 'admin, manage-classes'}} 
     {{#isolate}} 
     <div class='tab-pane' id='classestab'> 
     {{>classesTemplate}} 
     </div> 
     {{/isolate}} 
     {{/if}} 

     {{#if isInRole 'admin, manage-lessons'}} 
     {{#isolate}} 
     <div class='tab-pane' id='lessonstab'> 
      {{>lessons}} 
     </div> 
     {{/isolate}} 
     {{/if}} 

     <div class='tab-pane' id='onlinetab'> 
     {{#isolate}} 
     {{>onlineusers}} 
     {{/isolate}} 
     </div> 

    </div> 
</template> 

我怎樣才能完成我很容易後?

+0

如果你需要保留一些熱推重新加載的值,請使用Sessions。他們是設計保存的價值觀。 – imslavko

+0

或者更好地使用Cookies,如果您希望用戶返回時價值堅持:https://atmosphere.meteor.com/package/cookies –

回答

1

假設哈希值已經習慣了,你有一個像/#classestab一個網址,你可以只檢查哈希在模板中的URL渲染並選擇相關選項卡:

Template.admin.rendered = function() { 
    if (window.location.hash) 
    $('a[href="' + window.location.hash + '"]').tab('show'); 
} 
+0

單擊選項卡時,不會將哈希添加到位置。 – DigiLord

+0

將默認的點擊處理程序替換爲註釋掉'.preventDefault()'的處理程序?如: $('#adminTabs a')。click(function(e){e.preventDefault(); $(this).tab('show'); })' –