AngularJS:我不能在ng-click上设置变量值吗?

时间:2014-04-17 18:17:02

标签: angularjs

我有一个使用ng-show =" prefs"确定可见度。

我希望使用模态中的关闭按钮将$ scope.prefs设置为false,并使用锚标记将值设置为true。但是,我在谷歌上找到的所有内容都使用复选框而不是锚标签。

有没有办法使用ng-click将变量设置为false?

4 个答案:

答案 0 :(得分:89)

只是做:

ng-click="prefs = false"

答案 1 :(得分:23)

虽然@tymeJV给出了正确的答案,但这样做的方式是使用angular内联方式:

ng-click="hidePrefs()"

然后在你的控制器中:

$scope.hidePrefs = function() {  
  $scope.prefs = false;
}

答案 2 :(得分:2)

你可以使用这样的东西

<!DOCTYPE html>
<html>

<head>
  <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular.min.js"></script>
</head>

<body>
  <div ng-app="" ng-init="btn1=false" ng-init="btn2=false">
    <p>
      <input type="submit" ng-disabled="btn1||btn2" ng-click="btn1=true" ng-model="btn1" />
    </p>
    <p>
      <button ng-disabled="btn1||btn2" ng-model="btn2" ng-click="btn2=true">Click Me!</button>
    </p>
  </div>
</body>

</html>

答案 3 :(得分:1)

如果您使用的是最新版本的Angular(2/5/6):

在你的component.ts

//x.component.ts
prefs = false;

hidePrefs(){
   this.prefs = true;
}