So lösen Sie das Problem, wenn Sie gleichzeitig JQuery DatePicker und Validierung verwenden
-
23-09-2019 - |
Frage
Wenn ich DatePicker mit Triggersymbol verwendet habe, damit Benutzer das Datum aus Klicken auf dieses Symbol oder direkt in Textbox (TXTDate) wählen können, habe ich auch die JQuery -Validierung verwendet, um Textbox zu verlangen, muss nicht leer sein. Wenn ein Benutzer das Formular mit leerem Textfeld (txtdate.text = "") sendet, ist die Fehlermeldung des Validierungs -Push -Triggersymbols auf der rechten Seite. Könnten Sie mir die Lösung sagen? Vielen Dank!
Lösung
$('#some_form').validate({
rules: {...},
messages: {...},
errorPlacement: function(error, element) { //solve you problem
var trigger = element.next('.ui-datepicker-trigger');
error.insertAfter(trigger.length > 0 ? trigger : element);
}
});
Andere Tipps
Die Fehlerplacement -Funktion empfängt zwei Parameter - die Fehlermeldung und das validierte Element. Verwenden Sie letztere, um zu entscheiden, ob Sie die Platzierung für Ihre Felder anpassen sollen (z. B. durch Hinzufügen einer Klasse):
$('form').validate({
rules: {...},
errorPlacement: function(error, element) {
if (element.hasClass('customError')) {
// custom error placement
}
else {
element.after(error); // default error placement
}
}
});
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow