Ich habe ein Formular erstellt mit ASP.NET MVC 5 mit @Html.TextBoxFor
, um das Formular mit meinem Modell zu füllen (z. B. nach einer Formularnavigation oder Server-Seite Validierung fehlgeschlagen) .AngularJs und ASP.NET MVC 5 - ng-Modell überschreiben Textbox Wert
Ich habe jetzt eine clientseitige Adresssuche mit Angular eingeführt, was bedeutet, dass einige der Formularfelder jetzt mit ng-model
dekoriert sind, um die Angular-Suche zu ermöglichen, die gesuchte Adresse zu füllen.
z.B .:
@Html.TextBoxFor(m => m.Town, new { @class="form-control", ng_model="address.town" })
Hinzufügen der ng-model
jetzt den Wert aus dem MVC-Modell gesetzt hat Vorrang, wenn die Seite neu geladen wird.
Wenn Sie die Quelle im Browser anzeigen, wird der Textboxwert vom MVC-Modell korrekt auf Town
gesetzt, aber Angular kommt dann und füllt es mit address.town
, das leer ist, so dass das Formular keinen Wert anzeigt.
Wie kann ich verhindern, dass Angular dies tut?
hier Dies ist wahrscheinlich eine bessere Antwort als meine. +1 –
Sie könnten auch 'ng_value' anstelle von' ng_init' verwenden –
Die Anweisung ist genial! TX – Shevek