Кнопка и валидаторы
-
09-10-2019 - |
Вопрос
У меня есть стол с двумя текстовыми коробками. Каждое TextBox имеет необходимый валидатор, чтобы сделать пользовательские данные в текстовом поле.
У меня также есть таблица входа в систему, чтобы подтвердить привилегирование пользователей.
Когда я отправляю кнопку входа в систему, появляются валидаторы из первой таблицы и предотвратите регистрацию пользователя. Я изменил свойство кнопки входа (вызывает проверку) в false, но валидаторы, которые я добавил в таблицу входа в систему, не появился Отказ
Поэтому, пожалуйста, как я могу решить эту проблему.
Решение
Я думаю, что вы можете решить вашу проблему, используя Валидационные группы. Отказ Вот выдержка из страница с более длинным объяснением для тебя:
Эта страница имеет две группы - «Группа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>
Другие советы
То, что вам нужно использовать, - это атрибут 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 нажат, он будет проверять, только проверьте, действителен ли RFV. И да, вы можете иметь несколько элементов управления валидацией в той же группе проверки.
Когда вы устанавливаете свойство CavesValidation на FALSE, вы отключали все действия проверки для кнопки, а не только те, которые вы не хотели.