AngularJS,使用复选框更改模型值

时间:2016-10-03 22:29:13

标签: javascript html angularjs angularjs-directive directive

我有一个名为' bool'的绑定数据变量。它的值为100.当我单击一个复选框时,我希望通过向其添加50来增加值。我做错了什么?

<div ng-app="app">
  <h3 ng-model="bool = 100">BOOL</h3>
    <input type="checkbox" ng-model="add = 50"/>
    <div>{{bool + add}}</div>
</div>

非常感谢任何帮助,

谢谢:)

1 个答案:

答案 0 :(得分:1)

ng-model不能成为表达。如果您需要指定默认值,则应使用ng-init

此外,复选框的值为true(1)或false(0)。因此,虽然{{bool + add}}最初会显示150,但只要您选中或取消选中该复选框,它就会显示100101,因为现在add为0或1,取决于检查状态。

&#13;
&#13;
angular.module('app', []);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular.min.js"></script>
    <div ng-app="app">
      <h3 ng-model="bool" ng-init="bool = 100; additional = 0">BOOL</h3>
        <input type="checkbox" ng-model="add" ng-change="additional = add * 50"/>
        <div>{{bool + additional}}</div>
    </div>
&#13;
&#13;
&#13;