кнопка и валидаторы - PullRequest
       18

кнопка и валидаторы

1 голос
/ 18 октября 2010

У меня есть таблица с двумя текстовыми полями. Каждое текстовое поле имеет обязательный валидатор, чтобы пользователь вставлял данные в текстовое поле.

У меня также есть таблица входа в систему для подтверждения прав пользователя.

Когда я отправляю кнопку входа в систему, появляются валидаторы из первой таблицы, которые не позволяют пользователю войти в систему. Я изменил свойство кнопки входа (вызывает проверки) на false, но валидаторы, которые я добавил в таблицу входа, не появляется.

Так что, пожалуйста, как я могу решить эту проблему.

Ответы [ 2 ]

1 голос
/ 18 октября 2010

Я думаю, что вы можете решить свою проблему, используя ValidationGroups .Вот выдержка из страницы с более подробным объяснением для вас:

На этой странице есть две группы - «Группа1» и «Группа2» валидаторов.Затем на странице есть две кнопки - при нажатии кнопки 1 сработает первая группа валидаторов.При нажатии кнопки 2 вторая группа валидаторов сработает .Обратная передача будет заблокирована на стороне клиента по умолчанию, если проверка не удалась:

<html>
<body>
     <form runat=“server”>
          <asp:textbox id=“TextBox1” runat=“server”/>
          <asp:requiredfieldvalidator ValidationGroup=“Group1”
                                                       ErrorText=“Need to Fill in Value!”
                                                       ControlToValidate=“TextBox1”
                                                       runat=“server”/>
            <asp:textbox id=“TextBox2” runat=“server”/>
            <asp:requiredfieldvalidator ValidationGroup=“Group2”
                                                         ErrorText=“Need to Fill in Value!”
                                                         ControlToValidate=“TextBox2”
                                                         runat=“server”/>
            <asp:button text=“Group1” ValidationGroup=“Group1” runat=“server”/>
            <asp:button text=“Group2” ValidationGroup=“Group2” runat=“server”/>
     </form>
</body>
</html>
1 голос
/ 18 октября 2010

Вам нужно использовать атрибут ValidationGroup как для кнопок, так и для валидаций.Это позволяет определенным действиям принудительно применять подмножество валидаторов на странице только при нажатии кнопки.

<asp:TextBox ID="txtA" runat="server" />
<asp:RequiredFieldValidator ID="rfvA" runat="server" ErrorMessage="Message." ControlToValidate="txtA" ValidationGroup="A" />
<asp:Button ID="btnA" runat="server" Text="A" ValidationGroup="A" />

<asp:TextBox ID="txtB" runat="server" />
<asp:RequiredFieldValidator ID="rfvB" runat="server" ErrorMessage="Message." ControlToValidate="txtA" ValidationGroup="B" />
<asp:Button ID="btnB" runat="server" Text="B" ValidationGroup="B" />

Теперь при нажатии btnA будет проверяться только действительность rfvA (проверка txtA) и когда btnBпо щелчку, он будет только проверять, действительно ли rfvB.И да, у вас может быть несколько элементов управления проверкой в ​​одной и той же группе проверки.

Когда вы установили для свойства CausesValidation значение false, вы отключали все действия проверки для кнопки, а не только те, которые вам не нужны.

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