6

Con la validación del lado del cliente activada en ASP.NET MVC 2 RC2, el mensaje de resumen de validación está visible incluso cuando cargué por primera vez Edit.aspx page. Sin embargo, no se muestra en negrita, solo texto simple. Si envío el formulario con un error, el mensaje de resumen de validación se pone rojo en negrita y aparece una lista de errores a continuación.¿Error? La validación del lado del cliente en ASP.NET MVC 2 hace que se muestre el mensaje ValidationSummary incluso si no hay error

Este es el código que contiene el resumen de validación:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<MyApp.ViewModels.PersonEditorViewModel>" %> 

<script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script> 
<script src="../../Scripts/MicrosoftMvcValidation.js" type="text/javascript"></script> 

<% Html.EnableClientValidation(); %> 

<% using (Html.BeginForm()) 
    { 
%> 
     <%= Html.ValidationSummary("Edit was unsuccessful. Please correct the errors and try again.") %> 
     <%= Html.EditorForModel() %> 
     <p> 
      <input type="submit" value="Save" /> 
     </p> 
<% 
    } 
%> 

Es esto un error o estoy haciendo algo mal? Si es un error, ¿hay alguna solución?

Nota: Si desactivo la validación del cliente, todo funciona correctamente.

Respuesta

11

El archivo CSS de su sitio probablemente carezca de las entradas necesarias para que ValidationSummary() aparezca correctamente. Para solucionarlo:

  1. Cree un nuevo MVC 2 RC 2 WAP vacío.
  2. Abra su Content/Site.css en VS.
  3. Combine estas entradas en el archivo CSS de su sitio original.

El Site.css de WAP vacío contiene las clases necesarias, por lo que esto debería resolver su problema.

+0

Lo tienes, Levi. Gracias. – devuxer

+1

Más específicamente, es la siguiente entrada que probablemente falte: '.validation-summary-valid {display: none; } ' –

Cuestiones relacionadas