angularjs基于点击创建动态div并计算行总数

时间:2017-05-04 10:04:31

标签: javascript angularjs dynamic sum angular-ngmodel

我有一个动态创建其中包含一些值(固定值)的行,我想显示此值以及每个行的此值的总和。 然后我想更新一些这些值,看看我的SUM也改变了:

这是我的代码: HTML:

<div id="containerEsterno" class="row m-lg border-bottom">
    <button ng-click="vm.add()">New Item</button>
    <br>
    <div class="row m-xs" id="containerInterno">
        <label>question</label>
        <label>text</label>
        <label>checkbox</label>
        <label>addendo1</label>
        <label>addendo2</label>
        <label>risultato</label>
    </div>
    <div class="row" id="containerInterno" ng-repeat="item in vm.items">
        <input ng-model="item.question" type="text">
        <input ng-model="item.text" type="text" >
        <input ng-model="item.inlineChecked" type="checkbox" >
        <input ng-model="item.addendo1" type="number" >
        <input ng-model="item.addendo2" type="number" >
        <input ng-model="item.risultato" ng-value="item.addendo1+item.addendo2" class="colonnasmall">
    </div>
</div>

这是我的JavaScript:

this.add = function() {
      vm.items.push({ 
          inlineChecked: false,
          question: "",
          text: "",
          addendo1 : 1,
          addendo2 : 2,
          risultato: addendo1+addendo2,
    });
  };

但这给了我错误: ReferenceError:没有定义risultato .....

我改变然后risultato为= 0(在javascript上),

我更改了ng-model

<input ng-model="item.risultato" ng-value="item.addendo1+item.addendo2" class="colonnasmall">

<input ng-model="item.risultato=item.addendo1+item.addendo2" class="colonnasmall">

它有效,但给了我一个错误:

错误:ngModel:非分配 不可分配的表达

谁能帮帮我? 非常感谢

1 个答案:

答案 0 :(得分:0)

在JS中使用(无需添加默认值):

$scope.ItemProd = [];
console.log($scope.ItemProd);

在HTML中,删除两个操作数上的ng-value naduse ng-change:

this.add = function() {
  vm.items.push({ 
      inlineChecked: false,
      question: "",
      text: "",
      addendo1 : 1,
      addendo2 : 2
});
};