Por defecto Html.ValidationSummary() produce HTML así:construidos alrededor de un ValidationSummary con una caja a través de CSS
<span class="validation-summary-errors">There were some errors...</span>
<ul class="validation-summary-errors">
<li>First Name too long</li>
<li>Invalid Email Address</li>
</ul>
me gustaría para seleccionar todo el resumen de validación y añadir un cuadro delimitador alrededor de él a través de CSS, así que estoy añadiendo una clase CSS de esta manera:
.validation-summary-errors{
background-color:#D9FFB2;
border: 1px solid #5CBA30;
color:#000000;
margin-top:15px;
margin-bottom:15px;
}
Ahora el problema es que este se basa cajas separadas alrededor del mensaje de resumen validación y cada mensaje de error. Ciertamente no es lo que tenía en mente.
puedo añadir un div alrededor del resumen como este, pero esto se traducirá en una caja vacía de color rojo si no hay errores de validación, así que esto no es cierto:
<div class="my-validation-summary">
<h2>
<%=Model.Message%>
</h2>
<%= Html.ValidationSummary("There were some errors...")%>
</div>
me ocurren varias maneras de resolver esto:
- Añadir un div delimitador condicionalmente con las etiquetas del lado del servidor
- Añadir un div de delimitación a través de jQuery
- escribir mi propio º HtmlHelper envoltura en impresiones un ValidationSummary compatible con CSS
Sin embargo, todo esto parece bastante incómodo para resolver una tarea tan simple. Debe haber una mejor manera de hacer esto. ¿Quizás alguna otra forma de escribir la clase CSS para que no obtenga un cuadro vacío cuando no hay un resumen de validación?
Editar: Solo para aclarar, yo estoy llamando a la ayuda HTML así:
<%=Html.ValidationSummary("There were some errors...") %>
Edición 2: El alcance de esta pregunta era ver si he pasado por alto algo muerto fácil y obvio. Parece que no, así que simplemente agregaré mi propia función HtmlHelper que se ajuste a mis necesidades. Votaré para cerrar mi propia pregunta.
¿Personalizó su control de resumen de validación? No se procesa de la misma manera por defecto como lo ha publicado. – RSolberg
No, solo estoy usando el método ValidationSummary de sobrecarga (consulte la primera edición anterior) - Adrian Grigore 13 secs ago –
Me encanta cómo está disponible la fuente MVC: ábrala y escriba la suya. buena suerte –