AngularJS 开关

标签 angularjs

我想要 angularJs 中的一个按钮,当我按下它时会调用一个函数,当我再次按下它时它会执行另一个功能,比如 ON-OFF 开关。

我有这个:

<a ng-click="addForm(data)" href=""> <div class="starOff" ng-class="{starOn: checkF(data)}"></div> </a>

我会在单击一次时调用另一个函数。

最佳答案

您可以使用 ng-switch。

<div ng-app ng-controller="Ctrl">
    <div ng-switch on="selected">
        <button ng-switch-when='true' ng-click='button1()'>button1</button>
        <button ng-switch-when='false' ng-click='button2()'>button2</button>
    </div>
</div>

function Ctrl($scope) {
    $scope.selected = true;
    $scope.button1 = function () {
        //do logic for button 1
        $scope.selected = !$scope.selected;
        console.log('btn1 clicked');
    }

    $scope.button2 = function () {
        //do logic for button 2
        $scope.selected = !$scope.selected;
        console.log('btn2 clicked');
    }
}

Demo on jsFiddle

关于AngularJS 开关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17952711/

相关文章:

javascript - Angularjs - 无法在选项卡单击上显示选项卡

javascript - 如何强制水平滚动在 UI-GRID 上向右移动

angularjs - 如何禁用周 # 将鼠标悬停在 angular-bootstrap-calendar 上

javascript - 如何过滤掉或摆脱数组中的空对象? AngularJS,火力基地

javascript - Angular : directive function not called

angularjs - 无法通过 Protractor 在 ng-repeat 元素上使用 by.repeater()

javascript - 模型没有更新 - AngularJS

javascript - 未捕获错误 : Bootstrap's JavaScript requires jQuery version 1. 12.4 或更高版本,但低于日期时间选择器中的版本 3

javascript - 如何将变量从 Controller 传递给指令? Angular .JS

c# - 通过 http post 接收的值对于 AngularJS 和 Web api 2 为空