Javascript 角度ui选项卡集:更改活动选项卡内容

Javascript 角度ui选项卡集:更改活动选项卡内容,javascript,html,angularjs,angular-ui-bootstrap,angular-ui-tabset,Javascript,Html,Angularjs,Angular Ui Bootstrap,Angular Ui Tabset,我正在我的angular应用程序中使用ui选项卡。我有两个选项卡(tab1和tab2),当tab2中有一个按钮时,我想通过编程将tab1设置为活动选项卡 这是我的html代码: <uib-tabset active="active" justified="true"> <uib-tab id="tab1" index="0" heading="Tab 1" ng-click="active= 0"> <!-- content1

我正在我的
angular
应用程序中使用
ui选项卡。我有两个选项卡(tab1和tab2),当tab2中有一个按钮时,我想通过编程将tab1设置为活动选项卡

这是我的html代码:

      <uib-tabset active="active"  justified="true">
        <uib-tab id="tab1" index="0" heading="Tab 1" ng-click="active= 0">
    <!-- content1 -->
        </uib-tab>
     <uib-tab id="tab2" index="1" heading="Tab 2" ng-click="active= 1">
    <!-- content2 -->
<button ng-click="goToTab1()"> Go to tab 1</button>
    </uib-tab>
  </uib-tabset>
我的问题是:

当我单击按钮(在tab2中)时,tab1被选中,但显示的内容仍然是tab2内容。此外,当我点击tab2之后,在我再次点击tab1之前,什么都没有发生,如果我点击tab2,它就会工作

编辑

我已经试过解决这个问题的方法,但我也遇到了同样的问题。 另外,当我在
ng单击中直接更改活动值时,它根本没有任何效果

<button ng-click="active = 0"> Go to tab 1</button>
转到选项卡1
根据,您应该重构

<button ng-click="active = 0"> Go to tab 1</button>
转到选项卡1

转到选项卡1
我认为更好的方法是使用具有自己作用域的视图/指令,并根据
active

隐藏/显示它们。根据,您应该重构

<button ng-click="active = 0"> Go to tab 1</button>
转到选项卡1

转到选项卡1

我认为更好的方法是使用具有自己作用域的视图/指令,并根据@svarog的
active

隐藏/显示它们。我尝试了您给我的问题中的答案,但没有成功,然后编辑您的问题并添加第二次尝试,这样你的问题就不会重复另一个问题,最终也不会重复close@svarog请检查我的编辑@svarog的可能副本我在你给我的问题中尝试了答案,但不起作用,然后编辑你的问题并添加第二次尝试,这样你的问题就不会重复另一个问题,最终也不会重复close@svarog请检查我的编辑可能您没有使用在特定选项卡集代码段中定义函数的控制器。可能您没有使用在特定选项卡集代码段中定义函数的控制器。
$scope.goToTab1 = function() {
  $scope.current = 0;
};
<button ng-click="active = 0"> Go to tab 1</button>
<button ng-click="$parent.$parent.active = 0"> Go to tab 1</button>