Проверка клиента / сервера ASP.Net MVC - PullRequest
1 голос
/ 17 декабря 2009

Я пытаюсь использовать пример с этого сайта для проверки клиентского сайта. Я пытаюсь использовать тег формы html вместо Html.BeginForm(), но при этом отключается проверка на стороне клиента. EnableClientValidation работает только с Html.BeginForm. В чем разница?

<%@ Page Language="C#" Inherits="ViewPage<ProductViewModel>" %>

<% Html.EnableClientValidation(); %>
<% using (Html.BeginForm()) { %>

  <%= Html.TextBoxFor(m => m.Title) %>
    <%= Html.ValidationMessageFor(m => m.Title) %>
  <%= Html.TextBoxFor(m => m.Price) %>
    <%= Html.ValidationMessageFor(m => m.Price) %>

    <input type="submit" />
<% } %>

1 Ответ

1 голос
/ 17 декабря 2009

Из поста, на который вы ссылались (выделение добавлено):

Следующий шаг - включить проверку клиента для формы, вызвав EnableClientValidation, прежде чем мы вызовем BeginForm. Под капотом это устанавливает флаг в новом FormContext, который позволяет методу BeginForm знать, что проверка клиента включена . Таким образом, если вы установите идентификатор для формы, мы узнаем, какой идентификатор использовать при подключении проверки клиента. Если вы этого не сделаете, форма предоставит ее вам.

Метод BeginForm, очевидно, делает больше в ASP.NET MVC 2, чем просто «вывод тэга формы» - он также выводит весь клиентский скрипт для проверки, если этот флаг установлен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...