2015-10-05 145 views
-1

我是Angular.js noob,我想将两个值相乘得到那些值的总和,然后将总和乘以另一个值。在Angular.js中相乘

我想输入一个值:

<input type="text" ng-model="averageSalary"> 

然后得到这个结果,然后就可以进入另一个值:

<input class="input input-sm" type="text" ng-model="benefitsAt"> 

得到这些的总和值,然后乘以:

<input class=" input input-sm" type="text" ng-model="occupancy"> 

我希望这可以帮助,我试图解释它最好的,我可以

+0

你可能想在你输入'NG-change'指令,并在控制器相应地更新范围值的功能。事实上,你的问题是不完整的,可能会被关闭。你应该显示你的控制器的努力。 – isherwood

回答

0

HTML。 ..

<div ng-app="myapp" ng-controller="MyController"> 
<form> 
<input type="text" ng-model="averageSalary"> 
<input class="input input-sm" type="text" ng-model="benefitsAt"> 
<input class=" input input-sm" type="text" ng-model="occupancy"> 
</form> 
<span ng-bind="getMySum()"></span> 
</div> 

控制器...

angular.module("myapp").controller('MyController', ['$scope', function($scope) { 
    $scope.getMySum = function() { 
    return $scope.averageSalary * $scope.benefitsAt * $scope.occupancy; 
    }; 
}]); 

我还没有测试此代码 - 我将使用控制器的语法时才 - 但这似乎非常想要

+0

谢谢@ danday74,这实际上工作 – user2796032

0

你只需要添加一些输出显示:

<span>{{(averageSalary + benefitsAt) * occupancy}}</span> 

你可以或结果与零消除零显示当用户没有输入任何东西:

<span>{{(averageSalary + benefitsAt) * occupancy || 0}}</span> 
+0

小心..'(averageSalary + benefitsAt)'将连接字符串值 – charlietfl

0

这下面的代码应该工作并运行你的东西。

angular.module('myApp', []) 
 
    .controller('myController', function($scope) { 
 
    $scope.averageSalary = 55000; 
 
    $scope.benefitsAt = .02; 
 
    
 
    $scope.$watch('averageSalary + benefitsAt', function() { 
 
    $scope.occupancy = $scope.averageSalary * $scope.benefitsAt; 
 
    }); 
 
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 

 
<div ng-app="myApp" ng-controller="myController"> 
 
    Average Salary 
 
    <input type="text" ng-model="averageSalary"><br/> 
 
    Benefits 
 
    <input class="input input-sm" type="text" ng-model="benefitsAt"><br/> 
 
    Occupancy 
 
    <input class=" input input-sm" type="text" ng-model="occupancy"><br/> 
 
</div>

+0

这工作谢谢! – user2796032