Heim >Web-Frontend >CSS-Tutorial >Wie implementiert man eine serverseitige Validierung für dynamische Textfelder in einer Tabelle?
Klassenvalidierung für dynamische Textfelder in einer Tabelle festlegen
Problem:
Eine Tabelle enthält eine Reihe dynamischer Textfelder, aber serverseitig muss auf jedes Textfeld eine Klassenvalidierung angewendet werden Validierung.
Lösung:
Die notwendigen Datenvalidierungsattribute für die Validierung und Validierungsnachrichten-Platzhalter fehlen in den dynamischen Textfeldern. So setzen Sie sie um:
1. Validierungsattribute und Platzhalter hinzufügen:
Fügen Sie in der Ansicht Datenvalidierungsattribute und ihre entsprechenden Platzhalterelemente für die Anzeige von Validierungsmeldungen hinzu:
@Html.TextBoxFor(m => m.TargetInfo[i].TargetColor_U, new { id = "", @class = "form-control" }) @Html.ValidationMessageFor(m => m.TargetInfo[i].TargetColor_U)
2. Platzhalter für verbleibende Textfelder einschließen:
Falls nicht bereits vorhanden, fügen Sie Datenvalattribute und Validierungsnachrichten-Platzhalter für die verbleibenden Textfelder hinzu.
3. Dynamische Zeilen transformieren:
Klonen Sie im Skript die Vorlagenzeile mit Platzhaltern (# für Indexer) und füllen Sie sie mit echten Daten:
var clone = newrow.clone(); // clone the new row clone.html($(clone).html().replace(/#/g, index)); // update the indexer of the clone
4. Neue Zeile einfügen und Validierung erneut analysieren:
Fügen Sie die neue Zeile in die Tabelle ein und analysieren Sie die Validierung erneut, um sie auf die dynamischen Textfelder anzuwenden:
tablebody.append(row); // add the new row to the table form.data('validator', null); $.validator.unobtrusive.parse(form);
Zusätzliche Hinweise:
Das obige ist der detaillierte Inhalt vonWie implementiert man eine serverseitige Validierung für dynamische Textfelder in einer Tabelle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!