6

Con la convalida sul lato client attivata in ASP.NET MVC 2 RC2, il messaggio di riepilogo della convalida è visibile anche quando carico prima il mio Pagina Edit.aspx. Tuttavia, non viene visualizzato in grassetto rosso, ma solo testo normale. Se invio il modulo con un errore, il messaggio di riepilogo della convalida diventa rosso in grassetto e in basso viene visualizzato un elenco di errori.Bug? La convalida sul lato client in ASP.NET MVC 2 causa la visualizzazione del messaggio ValidationSummary anche se non vi sono errori

Qui è il codice che contiene il riepilogo di convalida:

<%@ 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> 
<% 
    } 
%> 

Si tratta di un bug o sto facendo qualcosa di sbagliato? Se si tratta di un bug, c'è una soluzione?

Nota: se disattivo la convalida del client, tutto funziona correttamente.

risposta

11

Probabilmente il file CSS del tuo sito manca delle voci necessarie affinché ValidationSummary() appaia correttamente. Per risolvere il problema:

  1. Creare un nuovo WAP vuoto MVC 2 RC 2.
  2. Apri il suo contenuto/Sito.css in VS.
  3. Unisci queste voci nel file CSS del tuo sito originale.

Il sito Web. WAP vuoto contiene le classi necessarie, quindi questo dovrebbe risolvere il problema.

+0

Hai capito, Levi. Grazie. – devuxer

+1

In particolare, è la seguente voce che probabilmente manca: '.validation-summary-valid {display: none; } ' –

Problemi correlati