MVC 2 Проверка и резюме - PullRequest
       2

MVC 2 Проверка и резюме

1 голос
/ 10 сентября 2010

Я начинаю с MVC 2, и мне было интересно, как работают итоговые проверки? Я думал, что это будет что-то похожее на итоговый контроль проверки веб-форм ASP.NET. Прежде всего, я делаю простую проверку, какие из этих файлов .js требуются?

<script src="<%= Url.Content("~/Scripts/MicrosoftAjax.js") %>" type="text/javascript"></script>
<script src="<%= Url.Content("~/Scripts/MicrosoftMvcAjax.js") %>" type="text/javascript"></script>
<script src="<%= Url.Content("~/Scripts/MicrosoftMvcValidation.js") %>" type="text/javascript"></script>

Мой текущий код выглядит так:

<%: Html.TextBoxFor(model => model.ApplicationState) %>
<%: Html.ValidationMessageFor(model => model.ApplicationState) %>

Я использую свои собственные стили и хочу, чтобы текст отображался красным цветом. В настоящее время это в черном. Если я перейду к исходному коду, то используемый класс будет валидирован по полю, также существует стиль ошибки по валидации поля. Когда этот класс используется? Если отображаются мои ошибки, тогда используется стиль, действительный для проверки поля.

Должен ли я создать свой собственный стиль, называемый field-validation-valid или field-validation-error, и сделать текст красным?

Спасибо.

Ответы [ 3 ]

3 голосов
/ 10 сентября 2010

Да, вы должны добавить стили для ошибок в ваш .css.Если вы создаете новое приложение MVC 2 с образцом учетной записи / домашнего контроллера, вы можете увидеть, что стили определены для ошибок в Site.css

.field-validation-error
{
    color: #ff0000;
}

.field-validation-valid
{
    display: none;
}

.input-validation-error
{
    border: 1px solid #ff0000 !important;
    background-color: #ffeeee !important;
}

.validation-summary-errors
{
    font-weight: bold;
    color: #ff0000;
}

.validation-summary-valid
{
    display: none;
}

Это значения по умолчанию.Очевидно, вы можете настроить их дальше.

По поводу вашего первого вопроса: все эти файлы сценариев необходимы.

1 голос
/ 11 сентября 2010

Файлы javascript необходимы только для проверки на стороне клиента. Даже тогда вам не нужно использовать Microsoft AJAX. Вы также можете сделать это с помощью валидации jQuery.

Если вы хотите предоставить свои собственные классы для вспомогательных методов проверки, существует перегрузка, которую вы можете использовать:

<%= Html.ValidationMessageFor( m => m.ApplicationState, "Error Message", new { @class = "error-class" }) %>

Если вы хотите включить сводку проверки (например, элемент управления ASP.net validationsummary), для этого также есть вспомогательный метод:

<%= Html.ValidationSummary() %>

Существует много перегрузок для метода, поэтому просто проверьте документацию, чтобы узнать, какой из них вы хотите использовать.

0 голосов
/ 30 апреля 2013

Как бы мне не хотелось использовать скины, если вы создадите файл скина и воспользуетесь им, он изменит все ваши отрендеренные элементы управления на красный цвет переднего плана или изменит его на любой другой, который вы захотите, чтобы вы могли выполнить всю проверку.красный снова без необходимости редактирования всех ваших отдельных элементов управления.Установка CSSClass переопределит все классы, установленные в элементе управления, что обычно плохо.

в вашем файле скина:

<asp:CustomValidator runat="server" ForeColor="Red" />
<asp:RequiredFieldValidator runat="server" ForeColor="Red" />
<asp:CompareValidator runat="server" ForeColor="Red" />
<asp:RangeValidator runat="server" ForeColor="Red" />
<asp:RegularExpressionValidator runat="server" ForeColor="Red" />
<asp:ValidationSummary runat="server" ForeColor="Red" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...