[Required(ErrorMessage = "Ingrese el nombre")]
public string Nombre { get; set; }
2. Agregar la verificación en el Action:
public ActionResult Guardar(PersonaViewModel persona)
{
if (ModelState.IsValid)
{
...
return View();
} else
{
ViewBag.Mensaje = "Error en los datos ingresados, debe completar los campos requeridos";
return View("Error");
}
}
*** El objeto ModelState contiene toda la información de los errores ocurridos, en ModelState.Values
*** Solo con esto, ya queda funcionando la validación del lado del servidor.
*** Para que la validación se haga también del lado del cliente, se debe agregar lo siguiente:
*** Para que la validación se haga también del lado del cliente, se debe agregar lo siguiente:
1. Agregar los siguientes scripts:
<script src="/Scripts/jquery.validate.js"></script>
<script src="/Scripts/jquery.validate.unobtrusive.js"></script>
<script src="/Scripts/jquery.validate.js"></script>
<script src="/Scripts/jquery.validate.unobtrusive.js"></script>
2. Agregar los ValidationMessages para cada atributo:
<div class="field-validation-error">@Html.ValidationMessageFor(m => m[i].Path)</div>
@Html.TextBoxFor(m => m[i].Path)
3. También se puede agregar el ValidationSummary, que sirve para mostrar un resumen de todos los campos con error. Esto en general se agrega al final de la página:
<div class="validation-summary-errors">
@Html.ValidationSummary()
</div>
*** Tener en cuenta que el comportamiento de las validaciones en IE a veces es diferente a Chrome ***
No hay comentarios:
Publicar un comentario