2017-10-16 1 views
0

Ich möchte den Wert einer Auswahl aus einem Drop-down in AngularJS speichern.Speichern Sie den Wert der Auswahl aus Dropdown auf eine Variable AngularJS

Ich bin in der Lage, die neue Auswahl auf UI zu replizieren, aber nicht in der Konsole.

<div ng-controller="MyCtrl"> 
<div> 
    Fruit List: 
    <select id="fruitsList" 
     ng-model="cart" 
      ng-change="getSelectedLocation()" 

     ng-options="state for state in shelf"></select> 
     <br/> 
    <tt>Fruit selected: {{cart}}</tt> 
</div> 

var myApp = angular.module('myApp', []); 

myApp.controller('MyCtrl', function($scope) { 

    $scope.cart = ""; 

    $scope.shelf = ['Banana', 'Apple', 'Pineapple', 'Blueberry']; 

    $scope.getSelectedLocation = function() { 
    console.log($scope.cart); 
    } 

    $scope.printSelectedValue = function() { 
    if ($scope.cart == 'Banana') { 
     console.log("Its a banana") 
    } else if ($scope.cart == "Apple") { 
     console.log("Its an apple") 
    } else { 
     console.log("Its neither a banana nor an apple") 
    } 
    } 

}); 

Jede Idee, wie das erreichen?

jsfiddle link

Antwort

1

Sie drucken den Wagen einmal, wenn der Controller instanziiert wird. Zu dieser Zeit hatte der Benutzer noch keine Möglichkeit, etwas auszuwählen.

Wenn Sie die Auswahl jedes Mal, es ändert sich drucken möchten, verwenden Sie ng-Änderung (Sie verwenden es bereits, BTW):

ng-change="printSelection()" 

und in der Steuerung:

$scope.printSelection = function() { 
    console.log($scope.cart); 
}; 
+0

Ja . Aber wie kann ich das an eine Variable speichern? Wenn ich Bananen auswähle, möchte ich, dass das in einer Variablen gespeichert wird und wenn ich Apfel auswähle, sollte der neue Wert für diese Variable "Apfel" sein. – a2441918

+0

Es ist bereits in einer Variablen gespeichert: $ scope.cart. –

+0

Also ich $ scope.cart innerhalb der printSelection-Funktion zurückgeben und wie verwende ich die ausgewählten Werte in anderen Funktionen? http://jsfiddle.net/Td2NZ/2172/ Warum druckt die Konsole jetzt nichts? – a2441918

Verwandte Themen