Ich bin neu bei angularjs. was ich versuche, ist dies, wenn ich eine Optionen aus selectbox1 und selectbox2 Wert ändert entsprechend dem Wert von selectbox1.Angularjs Wählen Sie Optionen Ausgabe
Für Beispiel: Wenn der Benutzer-Frontend von selectbox1 und selectbox2 wählen müssen Werte 'css, jquery, html, angularjs'
sind angezeigt, aber hier, wenn ich alle Optionen aus selectbox1 wählen. es zeigt 'php, ruby, c#, python'
, irgendeine Idee, was ich falsch mache. Bitte hilf mir.
angular.module("ctrl", [])
.controller("appsctrl", function ($scope) {
$scope.data = {
frontend: [{ id: 1, name: 'css' }, { id: 2, name: 'jquery' }, { id: 3, name: 'html' }, { id: 4, name: 'angularjs' }],
Server: [{ id: 1, name: 'php' }, { id: 2, name: 'ruby' }, { id: 3, name: 'c#' }, { id: 4, name: 'python' }]
};
$scope.selectvalues = function() {
angular.forEach($scope.data, function (value, key) {
$scope.values = value;
});
}
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="ctrl" ng-controller="appsctrl">
<div class="selectvalues">
<select class="form" ng-model="select" ng-change=selectvalues()>
<option value="">Select</option>
<option value="FrontEnd">FrontEnd</option>
<option value="Server">Server</option>
</select>
<select class="form" ng-model="select_list">
<option value="">Select</option>
<option ng-repeat ="value in values" value ="{{value.name}}">{{value.name}}</option>
</select>
</div>
</div>
Nun, man denke nur an, was Ihr Code tut: wenn selectvalues () aufgerufen wird, verwenden Sie es nicht, was die in der ersten Auswahlfeld ausgewählte Benutzer, die in $ Umfang gespeichert .wählen. Stattdessen durchläuft es nur alle Werte von $ scope.data und speichert die letzte in $ scope.values. –