使用另一个输入in-modal更改ng-modal输入值

时间:2016-03-07 04:25:12

标签: angularjs angularjs-ng-repeat angular-ngmodel

我想更改另一个输入ng-model值为ng-model的输入值。它没有这样做。 ng-model="quantity"位于ng-repeatng-model="power"位于ng-repeat之外。因此,当我更改power中的值时,所有quantity都应相应更改。

例如

 <input type="text" ng-model="quantity" value="{{quantity * power}}">
 <input type="text" ng-model="power" value="{{power}}"> 

2 个答案:

答案 0 :(得分:0)

试试这个。

&#13;
&#13;
angular.module('myApp', []).controller('mainCtrl', function ($scope) {
        $scope.quantities = [25, 6, 6.5, 80];
        $scope.quantitiesNewValue = [25, 6, 6.5, 80];
        $scope.power = 1;
 
   $scope.setValue = function(power){
      angular.forEach($scope.quantities, function(quantity,i){
         $scope.quantitiesNewValue[i] = power * quantity;
        });
     }
                 
    })
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="myApp" ng-controller="mainCtrl">
<h1>NG-MODEL Sample</h1>
<p><input type="text" ng-model="power" ng-change="setValue(power)" value="{{power}}" /></p>
<div ng-repeat="quantity in quantitiesNewValue">
Quantity: <input type="text" ng-model="quantity" />
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

你在html中有两个错误。

1)在第一个输入字段中你有power你应该在ng-model中给定功率,你输入的错误以及ng-mode将是ng-model

ng-model="power"而不是ng-mode="p在此输入代码ower"

2)在ng-repeat阻止中,ng-model应该是表达式(quantity*power),而不仅仅是数量

ng-model="quantity*power"代替ng-model="quantity"

Live Demo

你的HTML将是

<h1>NG-MODEL Sample</h1>
<p><input type="text" ng-model="power" value="{{power}}" /></p>
<div ng-repeat="quantity in quantities">
     Quantity: <input type="text" ng-model="quantity*power" value="{{quantity *         power}}"/>
</div>