【问题标题】:Enable tab in AngularJS在 AngularJS 中启用选项卡
【发布时间】:2018-06-21 11:48:14
【问题描述】:

在 HTML 中默认禁用两个选项卡

"<tab heading='Test Case Details' active='tabs[1].active' disable='true'>"+
"<tab heading='Test Case Past Results' active='tabs[2].active' disable='true'>"+

当点击一个功能时,两个选项卡都应该启用,一个是活动的

$scope.tabs[2].active = true;
$scope.tabs[1].disabled = false;

使用的控制器是

$scope.tabs = [{ title:'Detailed Test Case 1', content:'Test case content details will come here', disabled: true }];

仍然没有启用该选项卡。其他任何事情都要做。

【问题讨论】:

  • this-> disable='true' 表示您隐含地告诉它它已禁用,请尝试使用 ng-disabled 指令!你可以传入其中的变量或函数来检查选项卡是否被禁用。

标签: html angularjs tabs


【解决方案1】:

您在true 上定义了两个选项卡的disable 属性并且您永远不会更改它,因此无论您做什么,您的选项卡将始终被禁用。我想您应该将它们绑定到tabs[x].disabled,并且您的函数应该执行以下操作:

$scope.tabs[0].disabled = false;
$scope.tabs[1].disabled = false;
$scope.tabs[0].active = true;

要启用两个选项卡,然后激活第一个。

此外,您应该检查索引和数组。您的数组中似乎只有一项,但您使用索引“2”并且您似乎没有使用“0”索引..

【讨论】:

    【解决方案2】:

    如果您可以使用 jQuery,您可以为每个选项卡分配一个 id,并在您的函数中使用 jQuery 来执行以下操作:

    $("#tab1").attr("disable","false");
    $("#tab2").attr({"disable": "false", "active": "true");
    

    【讨论】:

    • 为什么要为这样一个微不足道的 angularjs 任务引入 jQuery?
    猜你喜欢
    • 2017-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多