Проверить динамически добавленные поля

Я добавляю строку таблицы с jQuery по нажатию кнопки:

$("#add_row").click(function () {
        zeile++;
        $("#ArtikelTabelle > tbody").append('<tr id="reihe' + zeile + '">' +
        '<td rowspan="2"><b>' + (zeile + 1) + '</b></td>' +
        '<td><input class="form-control" id="ccTabelle_' + zeile + '__ccArtikelNr" name="ccTabelle[' + zeile + '].ccArtikelNr" type="text"  /></td>' +
        '<td><input class="form-control" id="ccTabelle_' + zeile + '__ccWarentarifNr" name="ccTabelle[' + zeile + '].ccWarentarifNr" type="text" /></td>' +
        '<td><input class="form-control" data-val="true" data-val-number="Das Feld &quot;Anzahl&quot; muss eine Zahl sein." data-val-required="Das Feld &quot;Anzahl&quot; ist erforderlich." id="ccTabelle_' + zeile + '__ccAnzahl" name="ccTabelle[' + zeile + '].ccAnzahl" type="text" /></td>' +
        '<td><input class="form-control" data-val="true" data-val-number="Das Feld &quot;Einzelpreis&quot; muss eine Zahl sein." data-val-required="Das Feld &quot;Einzelpreis&quot; ist erforderlich." id="ccTabelle_' + zeile + '__ccEinzelpreis" name="ccTabelle[' + zeile + '].ccEinzelpreis" type="text" /></td>' +
        '<td><input class="form-control" data-val="true" data-val-number="Das Feld &quot;Gesamtpreis&quot; muss eine Zahl sein." data-val-required="Das Feld &quot;Gesamtpreis&quot; ist erforderlich." id="ccTabelle_' + zeile + '__ccGesamtpreis" name="ccTabelle[' + zeile + '].ccGesamtpreis" type="text" /></td>' +
        '<td><input class="form-control" data-val="true" data-val-number="Das Feld &quot;Anzahl Pakete&quot; muss eine Zahl sein." data-val-required="Das Feld &quot;Anzahl Pakete&quot; ist erforderlich." id="ccTabelle_' + zeile + '__ccAnzahlPakete" name="ccTabelle[' + zeile + '].ccAnzahlPakete" type="text" /></td>' +
        '<td><input class="checkbox-inline" data-val="true" data-val-required="Das Feld &quot;Fertig verpackt?&quot; ist erforderlich." id="ccTabelle_' + zeile + '__ccFertigVerpackt" name="ccTabelle[' + zeile + '].ccFertigVerpackt" type="checkbox" /><input name="ccTabelle[' + zeile + '].ccFertigVerpackt" type="hidden" /></td>' +
        '<td rowspan="2"><a class="btn btn-default delete_row" data-rowid="' + zeile + '">Artikel löschen</a></td>' +
    '</tr>' +
    '<tr id="text' + zeile + '">' +
        '<td colspan="3"> <textarea class="form-control input-md" id="ccTabelle_' + zeile + '__ccInhaltsbeschreibung" name="ccTabelle[' + zeile + '].ccInhaltsbeschreibung" placeholder="Inhaltsbeschreibung"></textarea> </td>' +
        '<td colspan="4"> <textarea class="form-control input-md" id="ccTabelle_' + zeile + '__ccBemerkungInhalt" name="ccTabelle[' + zeile + '].ccBemerkungInhalt" placeholder="Bemerkungen"></textarea> </td>' +
    '</tr>');

        aktualisiereZeilennummer();

    });

Я также использую этот контент для первоначального создания строки.

Но при нажатии кнопки "Отправить" я хочу проверить эти поля, если они заполнены или не выделены этими полями.

Я пытался с помощью $("#form").validate(); но я действительно не знаю, как использовать это, и это не сработало.

Также проверка в моей модели не удалась:

    public class InhaltModel
{
    //Inhalt
    [Required]
    [Display(Name = "Artikelnummer")]
    public string ccArtikelNr { get; set; }
    [Required]
    [Display(Name = "Warentarif-Nr")]
    public string ccWarentarifNr { get; set; }
}

Если я использую Razor, чтобы добавить строку, это работает, но не с jQuery, но мне нужно, чтобы она была динамической, чтобы я мог добавить столько строк, сколько захочу.

Может кто-нибудь сказать мне, как проверить мои поля?

1 ответ

Решение

Вам нужно разобрать form снова после добавления динамического контента для того, чтобы этот контент был проверен

$('form').data('validator', null);
$.validator.unobtrusive.parse($('form'));
Другие вопросы по тегам