Ich habe eine json enthält eine liste von fahrzeugtrends und dort entsprechende modelle.Angularjs ng-modell komplexe verbindung zwischen zwei auswahltags
var availables = {
"trends": [
{"label": "ALFA ROMEO"}
],
"models": {
"ALFA ROMEO": [
{"label": "159"},
{"label": "4C"},
{"label": "AR8C SPIDER"},
{"label": "BRERA"},
{"label": "GIULIETTA"},
{"label": "MITO"},
{"label": "SPIDER"}]
}
}
Ich möchte, dass sie select
in zwei angezeigt werden soll. Die erste Auswahl muss die zweite Bedingung konditionieren. Ich mochte das und es funktioniert gut. Wenn ich einen Trend auswähle, zeigt mir der andere select
nur die guten Modelle.
<label class="item item-input item-select">
<span class="input-label">Véhicule</span>
<select ng-model="vehicle.trend" ng-options="trend.label for trend in trends_availables.trends">
<option ng-disabled="true" ng-selected="true" value="">{{"select_trend" | translate}}</option>
</select>
</label>
<label class="item item-input item-select">
<span class="input-label">Modèle</span>
<select ng-model="vehicle.model" ng-options="model.label for model in trends_availables.models[vehicle.trend.label]">
<option ng-disabled="true" ng-selected="true" value="">{{"select_model" | translate}}</option>
</select>
</label>
Hier kommt mein Problem. wenn ich einen bereits erstellten vehicle
habe, zeigt der selects
nicht den guten Trend und das Modell. Als vehicle.trend
ist ein Objekt, ich kann verstehen, ng-model
schlägt fehl, das label
Attribut zu erhalten.
Wie konnte ich die beiden select
in Abhängigkeit arbeiten und der Trend/Modell zeigt die guten Etiketten?
Wenn ich eine vehicle
wie diese $scope.vehicle = {"trend": {"label": "ALFA ROMEO"}, "model": {"label": "159"}};
bekomme, möchte ich die Auswahl, um die guten Informationen zu zeigen.
Können Sie etwas mehr zu Ihrem Problem ausführen? Ich weiß, dass es funktioniert, aber dein Problem ist nicht klar. Ich habe einen CodePen erstellt, um eine Lösung zu finden, sobald ich weiß, was das Problem ist. [CodePen Demo] (http://codepen.io/Manbearpixel/pen/WwLKBa) – ManBearPixel
Ich habe meine Frage aktualisiert. –
Um zu verdeutlichen, möchten Sie jetzt ** alle anderen Auswahloptionen aus der Auswahleingabe entfernen **, die ** nicht ** mit den bereits ausgewählten Optionen übereinstimmen. – ManBearPixel