我刚开始学习Angular JS,想要创建一个简单的计算器。首先要求用户输入操作数的数量。在此之后,我想显示许多用于输入操作数的文本框。下面是html(这不是计算器的完整代码):
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml" ng-app="myCalc">
<head>
<meta charset="utf-8" />
<title>Calculator</title>
</head>
<body ng-controller="FormController">
<h3><em>Do your calculations here!!</em></h3>
<div>
<p>Enter number of operands : <input type="number" ng-model="paramCount" name="count" ng-change="getNumber(paramCount)"/></p>
<p ng-repeat="i in getNumber(paramCount)">Enter the operand : <input type="text" ng-model="numbers"/></p>
<p><button ng-click="reset()">Reset</button></p>
</div>
</body>
</html>
以下是脚本:
<script src="angular.min.js"></script>
<script>
var myCalcApp = angular.module('myCalc', []);
myCalcApp.controller('FormController', function ($scope) {
$scope.paramCount = 0;
$scope.getNumber = function (num) {
array = [];
for (i = 1; i <= num; i++) {
array.push(i)
}
return array;
}
$scope.reset = function () {
$scope.paramCount = 0;
};
});
</script>
我坚持将用户输入绑定到任何模型并使用它来计算总和。
非常感谢任何帮助。
感谢。
答案 0 :(得分:0)
一种解决方案是:
1)在控制器中创建一个操作数数组。
示例:$ scope.operands = [];
2)在&#34; $ scope.getNumber&#34;中初始化它功能
3)更改此ng-model:
<input type="text" ng-model="numbers"/>
通过这个:
<input type="text" ng-model="operands[$index]"/>
我希望我的回答适合你。
一些有用的文档:https://docs.angularjs.org/api/ng/directive/ngRepeat