Vous disposez d'un tableau dynamique avec des zones de texte et vous souhaitez appliquer une classe validation de toutes ces zones de texte. La validation discrète de jQuery n'enregistre pas les zones de texte ajoutées, ce qui entraîne un dysfonctionnement de la validation.
Pour résoudre ce problème, vous devez :
@for (int i = 0; i < Model.TargetInfo.Count; i++) { <tr> <td> @Html.TextBoxFor(m => m.TargetInfo[i].TargetColor_U, new { id = "", @class = "form-control" }) @Html.ValidationMessageFor(m => m.TargetInfo[i].TargetColor_U) <input type="hidden" name="TargetInfo.Index" value=@i /> </td> <!-- Other columns with similar markup --> </tr> }
var form = $('form'); var newrow = $('#newrow'); var tablebody = $('#tablebody'); $("#btnAddTarget").click(function() { var index = (new Date()).getTime(); var clone = newrow.clone(); clone.html($(clone).html().replace(/#/g, index)); var row = clone.find('tr'); tablebody.append(row); // Reparse the validator using unobtrusive validation form.data('validator', null); $.validator.unobtrusive.parse(form); });
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!