Проверка не работает для веб-контроля пользователей - PullRequest
1 голос
/ 29 сентября 2010

У меня есть следующее текстовое поле с проверкой:

<asp:TextBox ID="txtInput" runat="server" Width="80px" 
             CausesValidation="True"></asp:TextBox>

<asp:RequiredFieldValidator ID="RequiredValidator" runat="server"
                            ControlToValidate="txtInput"  
                            Display="None" 
                            ErrorMessage="Bitte füllen Sie dieses Feld aus" 
                            Enabled="false" />

<asp:RegularExpressionValidator ID="RegularExpressionValidator" runat="server" 
                                ControlToValidate="txtInput" 
                                ValidationExpression="[0-9]{1}(\d)*" 
                                Display="None" 
                                ErrorMessage="Bitte geben Sie eine Zahl ein" 
                                Enabled="false" />

<asp:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" 
                              TargetControlID="RequiredValidator"  />

<asp:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" 
                              TargetControlID="RegularExpressionValidator"  />

Если я нажимаю кнопку на этой странице (CausesValidation имеет значение true), тогда элемент управления проверяется правильно.Но когда я помещаю текстовое поле и связанные с ним валидаторы и расширители не непосредственно на страницу, а вместо этого в пользовательский контроль, всплывающее окно проверки больше не отображается.Кажется, он все еще действует, потому что действие для кнопки не запускается, когда ввод неверен.

Ответы [ 2 ]

1 голос
/ 02 ноября 2010

Я нашел решение.Имя моего пользовательского элемента управления содержит специальные символы.В моем случае «А», который является немецким A-Umlaut.Похоже, что в ASP.NET есть проблемы с валидаторами элементов управления, имена которых содержат символы не ascii.

0 голосов
/ 05 октября 2010

У ваших валидаторов есть Enabled="false".

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