2016-05-26 14 views
0

Ich entwickle eine ASP.NET MVC 5 App mit Razor, C# und .NET Framework 4.6.1.Validierung funktioniert nicht bei dynamisch hinzugefügten Feldern

Ich habe ein Problem mit der Validierung auf einem Eingabefelder, die ich dynamisch mit jQuery generieren.

Dies ist, was ASP.NET Razor erzeugt:

<input class="productClass" data-val="true" data-val-length="No más de 50 caracteres" data-val-length-max="50" data-val-required="Campo necesario" id="Configurations[0].Name" name="Configurations[0].Name" type="text" value="Estuche" /> 
<span class="field-validation-valid" data-valmsg-for="Configurations[0].Name" data-valmsg-replace="true"></span> 

Dies ist, was ich mit jQuery erzeugen:

<input type="text" name="Configurations[3].Name" id="Configurations[3].Name" data-val-required="Campo necesario" data-val-length-max="50" data-val-length="No más de 50 caracteres" data-val="true" class="productClass" ></input> 
<span data-valmsg-replace="true" data-valmsg-for="Configurations[3].Name" class="field-validation-valid"></span> 

Beide haben die gleichen Datenfelder mit dem gleichen Wert. Der einzige Unterschied ist der, den ich generiere, hat eine andere Reihenfolge in seinen Attributen.

Die Validierung funktioniert auf Eingaben automatisch generiert von ASP.NET Razor, aber meins funktioniert nicht. Ich kann einen leeren Wert auf NAME setzen und es nicht validieren.

Sehen Sie etwas falsch? Irgendein Rat?

Antwort

1

den folgenden Code hinzufügen, während die dynamischen Felder in Skript generieren:

$("form").removeData("validator"); 
$("form").removeData("unobtrusiveValidation"); 
$.validator.unobtrusive.parse("form"); 
Verwandte Themen