2011-01-15 4 views
1

Ich würde gerne wissen, wie die Validierung meiner Formularelemente, die über Ajax in die Seite eingefügt wurden, neu gebunden wird.Wie binde ich meine Validierungsereignisse nach einer Ajax-Formularaktualisierung erneut?

Dies ist die Teilansicht, die für den Browser gerendert wird.

<tr> 
    <td><%= Html.ValidationMessageFor(m => m.FirstName)%><%= Html.EditorFor(m => m.FirstName)%></td> 
    <td><%= Html.ValidationMessageFor(m => m.LastName)%><%= Html.EditorFor(m => m.LastName)%></td> 
    <td><%= Html.ValidationMessageFor(m => m.IsAttending)%><%= Html.EditorFor(m => m.IsAttending)%></td> 
    <td><%= Html.ValidationMessageFor(m => m.Food)%><%= Html.EditorFor(m => m.Food)%></td> 
</tr> 

Ich habe auch bei MicrosoftMvcValidation.debug.js sah nach, ob alle Funktionen gibt es die ich anrufen kann, und ich habe dies gefunden;

// register validation 
Sys.Application.add_load(function() { 
    Sys.Application.remove_load(arguments.callee); 
    Sys.Mvc.FormContext._Application_Load(); 
}); 

Ich habe versucht, diesen Code aufrufen, nachdem der Ajax-Aufruf abgeschlossen ist und nach dem Markup in das DOM injiziert wird, aber keine Zigarre.

Ich bin über diese Frage gestolpert, aber es spricht nur über die Neubindung der Validierung an ein ganzes Formular, das über Ajax injiziert wurde und das hat mir auch nicht geholfen. mvc2-client-validation-isnt-working-when-getting-form-from-ajax-call

Ich sollte wahrscheinlich auch erwähnen, dass meine Teilansicht doppelte IDs im DOM generiert. Einige Hinweise, wie Sie das umgehen können, wären ebenfalls sehr willkommen. Vielen Dank.

+0

Angebot ein Kopfgeld. – Will

Antwort

0

ASP.NET MVC Client Side Validation with Dynamic Contents

Das war ein guter Ausgangspunkt. Ich hoffe es hilft.

+0

Danke für den Link Simon obwohl ich, wie schon erwähnt, kein ganzes Formular laden wollte, ich möchte nur ein Fragment eines Formulars laden, genauer gesagt, ich möchte eine neue Zeile zu meinem Gitter hinzufügen. –

Verwandte Themen