Setzen Sie den Standardwert im Drop-down-Menü mit Angularjs
Ich habe ein Objekt, wie unten beschrieben. Ich habe um diese als drop-down:
var list = [{id:4,name:"abc"},{id:600,name:"def"},{id:200,name:"xyz"}]
In meinem controller habe ich eine variable, die trägt einen Wert ein. Dieser Wert wurde entschieden, welche der drei oben genannten Elemente in dem array ausgewählt werden, die standardmäßig in der Dropdown -:
$scope.object.setDefault = 600;
Wenn ich ein drop-down-Formular-Element wie folgt:
<select ng-model="object.setDefault" ng-options="r.name for r in list">
Ich vor zwei Problemen:
- die Liste generiert wird, als
<option value="0">abc</option> <option value="1">def</option> <option value="2">xyz</option>
statt
<option value="4">abc</option> <option value="600">def</option> <option value="200">xyz</option>
- Keine option wird standardmäßig ausgewählt, obwohl ich
ng-model="object.setDefault"
Kommentar zu dem Problem
In eckige das value-Attribut in den Optionen im index der option innerhalb innerhalb der select-element
Ajay..Sie zu sein scheinen Recht. Die Frage ist nun also, wie gebe ich es ein custom Wert
InformationsquelleAutor der Frage runtimeZero | 2013-07-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Problem 1:
Der generierte HTML-Code, die Sie bekommen, ist normal. Offenbar ist es eine Eigenschaft Eckig zu sein, kann jede Art von Objekt als Wert für eine Auswahl. Winkel stellt die Zuordnung zwischen der HTML-option-Wert und den Wert in das ng-Modell.
Siehe auch Umur ' s Kommentar in dieser Frage: Wie kann ich die value-Eigenschaft in AngularJS' ng-Optionen?
Problem 2:
Stellen Sie sicher, dass Sie mit der folgenden ng-Optionen:
Und legen diese in Ihren controller wählen Sie einen Standard-Wert:
InformationsquelleAutor der Antwort Stephanie
Wenn Sie ng-Optionen zum füllen einer select-Liste verwendet er das gesamte Objekt, da der ausgewählte Wert, nicht nur den einzelnen Wert sehen Sie in der select-Liste. Also in deinem Fall würden Sie benötigen, um
oder
Ich auch nur empfehlen die Ausgabe des Wertes von $scope.Objekt.setDefault in Ihrer Vorlage, um zu sehen, was ich Rede immer ausgewählt.
InformationsquelleAutor der Antwort Sharondio
Angesichts
JS:
In side controller
InformationsquelleAutor der Antwort Webfreaks
Können Sie es mit folgenden code(track by),
InformationsquelleAutor der Antwort Lokesh Kumar
Dies ist eine alte Frage und Sie haben die Antwort bereits.
Meine plnkr erklärt auf meine Vorgehensweise zum durchführen der Auswahl einer Standard-dropdown-Wert. Im Grunde genommen habe ich eine Dienst würde die Rückkehr der dropdown-Werte [hart codiert-test]. Ich war nicht in der Lage, wählen Sie den Wert standardmäßig und fast einen Tag verbringen und endlich kapiert, dass ich festgelegt haben, sollten
$scope.proofGroupId = "47";
statt$scope.proofGroupId = 47;
im script.js Datei. Es wurde mir schlecht und ich habe nicht bemerkt, dass ich die Einstellung wurde ein integer-47 anstelle der Zeichenfolge "47". Ich behielt die plnkr, wie es ist, nur im Falle, wenn einige würde man gerne sehen. Hoffentlich, das würde einigen helfen.InformationsquelleAutor der Antwort user007
Dies würde zu erhalten, Ihnen das gewünschte Ergebnis Dude 🙂 Cheers
InformationsquelleAutor der Antwort Amulya Kashyap
Einige der Szenarien, Objekt.Artikel würde nicht geladen werden oder nicht definiert wird.
Verwenden ng-init
InformationsquelleAutor der Antwort Varun Raghunandan
InformationsquelleAutor der Antwort satish kumar
Ich konnte dir helfen mit der html:
statt
festlegen abc als Standard-Wert.
InformationsquelleAutor der Antwort Tushar Sharma