Javascript UI引导选项卡在重新加载后保存活动选项卡

Javascript UI引导选项卡在重新加载后保存活动选项卡,javascript,angularjs,twitter-bootstrap,ui.bootstrap,Javascript,Angularjs,Twitter Bootstrap,Ui.bootstrap,我需要在重新加载页面后显示活动选项卡。我发现我需要将活动选项卡名称存储到会话或本地存储。但对我来说,这不起作用。 这里是html <uib-tabset> <uib-tab active="active" ng-init="isActive = isActiveTab('Info', $index)" index="0" data-toggle="tab" href="#sectionInfo" heading="Info" classes="tabovi

我需要在重新加载页面后显示活动选项卡。我发现我需要将活动选项卡名称存储到会话或本地存储。但对我来说,这不起作用。 这里是html

<uib-tabset>
     <uib-tab active="active" ng-init="isActive = isActiveTab('Info', $index)" index="0" data-toggle="tab" href="#sectionInfo" 
     heading="Info" classes="tabovi" select="setActiveTab('Info')"></uib-tab>
     <uib-tab active="active" ng-init="isActive = isActiveTab('Info 2',$index)" index="1" data-toggle="tab" href="#sectionInfoTwo" 
     heading="Info 2" classes="tabovi" select="setActiveTab('Info')"></uib-tab>
</uib-tabset>

谢谢

您需要存储索引而不是其名称。请参阅以下代码段:

HTML:


重新加载页面后,他们将我返回到activeTab=0。当我单击选项卡时,它们将索引存储在会话存储中,但刷新后总是返回0页面重新加载后,
$scope.active
变量中的值是多少?它是否返回正确的值?从两个选项卡中删除
active=“active”
属性,然后查看它是否工作。查看打开的会话存储您需要在其中进行两项更改。首先,
$scope.active=parseInt($scope.getActiveTab())
// Save active tab to localStorage
$scope.setActiveTab = function (activeTab) {
    sessionStorage.setItem("activeTab", activeTab);
};

// Get active tab from localStorage
$scope.getActiveTab = function () {
    return sessionStorage.getItem("activeTab");
};

// Check if current tab is active
$scope.isActiveTab = function (tabName, index) {
    var activeTab = $scope.getActiveTab();
    return (activeTab === tabName || (activeTab === null && index === 0));
};
<uib-tabset active="active">
    <uib-tab index="0" data-toggle="tab" heading="Info" select="setActiveTab(0)" classes="tabovi"></uib-tab>
    <uib-tab index="1" data-toggle="tab" heading="Software config" select="setActiveTab(1)"></uib-tab>
    <uib-tab index="2" data-toggle="tab" heading="Hardware config" select="setActiveTab(2)"></uib-tab>
    <uib-tab index="3" data-toggle="tab" heading="Config" select="setActiveTab(3)"></uib-tab>
</uib-tabset>
$scope.setActiveTab = function (activeTabIndex) {
    sessionStorage.setItem("activeTab", activeTabIndex);
};

$scope.getActiveTab = function () {
    return sessionStorage.getItem("activeTab");
};

// This will set last tab active automatically when page loaded
$scope.active = parseInt($scope.getActiveTab());