/ / Mehrere ng-Modelle in einem Eingabefeld? - Angularjs, Formen, Angular-ngmodel

Mehrere ng-Modelle in einem Eingabefeld? - Angularjs, Formen, Angular-ngmodel

Ich habe ein Formular und eine Liste von Gegenständen. ich benutzte ng-model="searchFor" um die Liste der Artikel passend herauszufiltern (dieser Teil funktioniert gut), aber ich möchte auch den Artikel "suggerieren", der herausgefiltert wurde - was das erfordern würde ng-model="adding_item.name" auf dem Eingabefeld auch (denke ich).

Kannst du mehrere haben? ng-models auf einem Eingabefeld? Gibt es einen anderen Weg?

Antworten:

9 für die Antwort № 1

Verwenden Sie das ng-change-Ereignis, um den Modellwert zu erfassen, und weisen Sie ihn einem anderen Eingabeelement mit seinem eigenen ng-Modell zu.

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

<div ng-app>
<input type="text" ng-model="input" ng-change="input1=input;input2=input; " />
<input type="hidden" ng-model="input1" />
<input type="hidden" ng-model="input2" />
<br>Model
<br>{{input | uppercase}}
<br>Model 1
<br>{{input1 | uppercase}}
<br>Model 2
<br>{{input2 | uppercase}}
</div>


6 für die Antwort № 2

Nein, ngModel sollte solche Dinge nicht tun, jetzt ist es besser, die Logik aus der Ansicht zu verschieben. Für dieses Szenario könnten Sie sich bedienen getterSetter Möglichkeit:

https://docs.angularjs.org/api/ng/directive/ngModel#binding-to-a-getter-setter

Es ist schwierig, substanzielle Vorschläge zu machen, ohne den Code zu sehen.