2017-01-27 238 views
0

的指標我想獲得在JS側的有源標籤的索引,但我不知道怎麼辦呢,我試着severall的事情,但我得到的是「未定義」或者更糟:一個空白頁。獲得活動標籤

這裏是我的代碼:

HTML:

<uib-tabset> 
    <uib-tab ng-repeat="item in tabs" active="item.active" TabIndex="{{item.id}}" heading="{{item.name}}"></uib-tab> 
</uib-tabset> 

JS:

Category.findAll().$promise.then(function (result) { 
     $scope.tabs = result; 
    }); 

下面是截圖,共進午餐頁面後顯示的分頁:

index

我想要得到的指標:在我的js側4或3(「{{item.id}}」的TabIndex =),平變化也是在頁面加載時。

我希望有人能幫助我。

對不起,我的英語不是母語。

+0

你指的是選定的選項卡的索引(0,1 ......)? – Dario

回答

1

您可以將範圍變量綁定到uib-tabset組件active屬性:

<uib-tabset active="activeTab"> 
    <uib-tab ng-repeat="item in tabs" active="item.active" TabIndex="{{item.id}}" heading="{{item.name}}" select="alertMe($event, $index)></uib-tab> 
</uib-tabset> 

,並在你的控制器,你可以選擇的選項卡或只是聽標籤更改事件:

Category.findAll().$promise.then(function(result) { 
    $scope.tabs = result; 
    $scope.activeTab = 1; //set 2nd tab 

    $scope.$watch('activeTab', function(newVal) { 
     console.log(newVal); //listen to tab change events 
    }); 

}); 

看到這個fiddle,如果您需要。

0

select() - 激活選項卡時調用的可選表達式。支持表達式模板中的$ event。

<uib-tabset> 
    <uib-tab ng-repeat="item in tabs" active="item.active" TabIndex="{{item.id}}" heading="{{item.name}}" select="alertMe($event, $index)></uib-tab> 
</uib-tabset> 

alertMe是內部控制的功能

$scope.alertMe = function(e, index) { 
    console.log(e, index) 
};