2014-05-08 4 views
0

Я использовал контрольные проверки Asp.net, такие как Required Field Validator и т. Д., Так что мне нужно явно указать Page.IsValid или он называется по умолчанию?Мне нужно явно вызвать Page.IsValid, если я использую valdiators Asp.net?

<label>DeadLine</label> 
<asp:TextBox ID="txtDeadLine" runat="server" CssClass="textField_width"></asp:TextBox> 
<asp:RequiredFieldValidator ID="RequiredFieldValidator7" runat="server" 
         ControlToValidate="txtDeadLine" ErrorMessage="Deadline Date is Required" 
         ForeColor="Red" ValidationGroup="GroupComposeLetter">Deadline Date is Required 
</asp:RequiredFieldValidator> 
<br /> 
<%--<asp:GridView ID="gridViewComplaints" runat="server" 

    ></asp:GridView>--%> 
<br /> 

ответ

3

Если элемент управления имеет CausesValidation набор для true (по умолчанию) не требуется.

управления, где это устанавливается по умолчанию:

  • Button,
  • ImageButton,
  • LinkButton
  • управления веб-сервера,
  • HtmlInputButton,
  • HtmlInputImage,
  • HtmlButton
  • управления HTML-сервер,
  • элементы управления, которые могут автоматически создавать обратно на сервер, таких как TextBox, CheckBox, ListControl и BulletedList

Так что, если вы установите его в false вы могли заставить валидация на серверах путем вызова Page.Validate(ValidationGroupName) вручную. После этого вы можете проверить Page.IsValid.

+0

нормально, но со ссылкой на ваше последнее предложение, почему бы кто-нибудь сделать? отключить, а затем вызвать на сервере? – user3518032

+0

@ user3518032: иногда вы не хотите принудительно выполнять проверку на клиентах всегда, но при определенных условиях, которые известны на сервере. Или вы хотите объединить несколько групп проверки. –

0

Проверка выполняется после Page_Load, но до обработчиков событий (см. http://msdn.microsoft.com/en-us/library/ms178472(v=VS.100).aspx).


Если кнопка не вызывает проверку, вы должны вручную стрелять Page.Validate.

  • (Page.Validate метод вызывается автоматически с помощью элементов управления, которые имеют свойство CausesValidation значение ИСТИНА (который является значением по умолчанию для управления Button).

  • Page.IsValid недвижимость сообщает, была ли проверка успешной или нет.)

    Подробнее см. в этом обсуждении

How does Page.IsValid work?

Смежные вопросы