Ich lade den Inhalt einer Teilansicht mit Ajax und Ausgabe der zurückgegebenen HTML direkt auf der Seite durch Auffüllen der HTML eines Div. Hier ist der Ajax:Formular geladen mit Teilansicht, zeige die Antwort
$.ajax({
data: { productId: productId },
datatype: "text/plain",
type: "GET",
url: theUrl,
cache: false,
success: function (data) {
$("#contentArea").html(data);
}
});
Dies funktioniert alles wie erwartet. Abhängig von einer Anzahl von Faktoren variiert das tatsächliche HTML in der Teilansicht und eines der möglichen Szenarien gibt ein Formular zurück, das nach einem Feedback fragt.
Ich habe die clientseitige Validierung an diesem Formular arbeiten, aber die serverseitige Validierung kooperiert nicht.
Meine Validierung ist FluentValidation und in meinem Controller habe ich diese paar Zeilen (MyValidator mein FluentValidation Validator ist und ordnungsgemäß funktioniert):
var valResult = myValidator.Validate(myRequest);
if (!valResult.IsValid) return Redirect(Request.UrlReferrer);
in dieser Halbzeit arbeitet, schlägt die IsValid Prüfung durch, wenn die Daten ungültig sind Aber dann lädt meine Weiterleitung einfach die Seite erneut, ohne dass die serverseitigen Validierungsnachrichten vorhanden sind. Vermutlich liegt das daran, dass ich eine Weiterleitung verwende.
Wie bekomme ich es die Seite neu zu laden, aber mit den Validierungsnachrichten an Ort und Stelle, da ich dieses Formular dynamisch mit Ajax laden?
Ich war in der Lage, mit den Validierungsfehlern zu arbeiten und zu ändern, wie ich sie zeigte, so dass ich dies als die Antwort markiert. Vielen Dank. –