¿Cómo resolver un problema cuando el uso de jQuery selector de fechas y validación en el mismo tiempo
-
23-09-2019 - |
Pregunta
Cuando solía selector de fechas con el icono del disparador para que los usuarios puedan elegir la fecha de clic en este icono o escribir directamente en el cuadro de texto (txtDate), también utilicé la validación de jQuery para requerir cuadro de texto debe ser no vaciar. Pero cuando un usuario envía el formulario con el cuadro de texto vacío (txtDate.Text = ""), el mensaje de error de validación de empuje icono de disparo a la derecha. ¿Me podría decir la solución? Muchas gracias!
Solución
$('#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);
}
});
Otros consejos
La función errorPlacement recibe dos parámetros - el mensaje de error y el elemento validado. Utilizar este último para decidir si debe o no modifique para la colocación de sus campos (por ejemplo, mediante la adición de una clase):
$('form').validate({
rules: {...},
errorPlacement: function(error, element) {
if (element.hasClass('customError')) {
// custom error placement
}
else {
element.after(error); // default error placement
}
}
});