在Angular JS中恢复ng-model值

时间:2015-09-30 15:53:29

标签: javascript angularjs

是否可以在显示时恢复模型值?

我的控制器有这个属性:

this.config = {client: false, name: true};

我想使用这样的值:

<label>
  <input ng-model="ctrl.config.client"> Client
</label>

<div ng-hide="ctrl.config.client">Client</div>

我想在config.client值为false时显示输入。我该怎么办?

2 个答案:

答案 0 :(得分:1)

更新:如果您想选中一个复选框,并使用$scope,则可以使用ng-true-value="false"ng-false-value="true"来恢复默认值。仅当您使用$scope而不是this时,此功能才有效!这是一个例子:

<body ng-app="app">
  <div ng-controller="ctrl">
  <label>
    <input type="checkbox" ng-model="config.client" ng-true-value="false" ng-false-value="true">
  </label>

  <div ng-hide="config.client">Client</div>
  </div>
<script>
  angular.module('app', []).controller('ctrl', function($scope) {
    $scope.config = {client: false, name: true};
  });
</script>
</body>

尝试它的掠夺者:http://plnkr.co/edit/vRIZMb2CpDQAKHu91yhN?p=preview

答案 1 :(得分:0)

如果我理解正确,我认为你想要ng-checked

然后否定它。如下所示:

<label>
 <input type="checkbox" ng-checked="!ctrl.config.client" ng-model="ctrl.config.client"> Client
</label>

我假设你想要一个复选框,虽然你的例子不清楚。