Estoy secuestrando un formulario existente y POSTING en el servidor. jQuery validate hace la mayor parte de la validación, pero si la validación falla en el servidor, devolvemos los errores al cliente como JSON.Cómo borrar jquery validar errores
A continuación se muestra el código que hace que:
<script type="text/javascript">
$(function() {
$("form").submit(function (e) {
var $form = $(this);
var validator = $form.data("validator");
if (!validator || !$form.valid())
return;
e.preventDefault();
$.ajax({
url: "@Url.Action("index")",
type: "POST",
data: $form.serialize(),
statusCode: {
400: function(xhr, status, err) {
var errors = $.parseJSON(err);
validator.showErrors(errors);
}
},
success: function() {
// clear errors
// validator.resetForm();
// just reload the page for now
location.reload(true);
}
});
});
});
</script>
El problema es que parece que no puede borrar los errores de validación si el puesto es exitosa. Intenté llamar al validator.resetForm()
pero esto no hace ninguna diferencia, los mensajes de error agregados por la llamada showError()
, todavía se muestran.
Nota También estoy usando el complemento jQuery.validate.unobtrusive.
puede usted por favor enviar el código completo? –
tampoco hay mucho más, pero de todos modos publiqué el guión completo. –
Solo me pregunto, ¿esta línea funciona para usted? validator.showErrors (errors); –