Ich lerne eckig und habe versucht, dynamische Bindung auf meiner Testseite zu implementieren. Mein Ziel war es, Eingabefelder zu implementieren, von denen jeder mit einem dynamischen Variablennamen verknüpft ist.Winkelbindung an vererbte Bereichsvariablen
Wenn ich Ergebnis Array nicht in Root-Bereich deklarieren will - es wird Ergebnis-Array für jede Wiederholung erstellen und unter jeder Box sehe ich seine eigenen Ergebnisse Inhalt.
Aber wenn ich Decalre Ergebnisse im root-Bereich, und da ich es nicht redeclare - keine Spiegelung muss gelten, und ich sollte jedes Feld zu Variable im Root-Bereich Array binden. Stattdessen sehe ich unter jedem Feld nur den Array-Inhalt des Root-Bereichs und ändert sich nicht, während ich die Eingaben ändere. Jede Hilfe wird geschätzt.
Hier ist mein Beispiel:
HTML:
<!DOCTYPE html>
<html>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="index.js"></script>
<body ng-app="app" ng-controller="main" > <!--ng-init="results = [{'TEST': 1}]" -->
<div>
<p>Name: <input type="text" ng-model="name"></p>
<p ng-bind="name"></p>
<input type="button" value="Clickme" ng-click="clickfnc()">
<input type="button" value="Dump" ng-click="dump()">
<input type="button" value="Pop" ng-click="remove()">
</div>
<div ng-repeat="x in params">
<p>Name: <input type="text" ng-model="results[x.name]"></p>
<p ng-bind="results[x.name]"></p>
<p>{{x.name}}</p>
<p>{{results}}</p>
<p>{{params}}</p>
</div>
<hr>
<p ng-bind="results"></p>
<hr>
</body>
</html>
index.js:
var app = angular.module('app', []);
app.controller('main', function ($scope)
{
$scope.clickfnc = function()
{
console.log('click');
$scope.params = [
{
name: 'ACCOUNT'
},
{
name: 'AMOUNT'
}
];
};
$scope.dump = function()
{
console.log($scope.results)
};
$scope.remove = function()
{
$scope.params.pop();
}
});
Vielen Dank! Mein Fehler, wird besser aussehen, bevor Sie das nächste Mal fragen. – user3177112