2013-11-12 4 views
1

Я проектирование web-application с помощью asp.net with c# и я просто добавил validation code для textbox, кажется, что это достаточно хорошо, чтобы выполнить, но никаких вопросов проверки не было показано, когда приложение выполняется при вводе null или invalid.вопросы валидации в текстовом поле в asp.net

<asp:ValidationSummary ID="ValidationSummary1" runat="server" 
    ShowMessageBox="True" DisplayMode="BulletList" 
    HeaderText="Validation issues" ShowSummary="False" ValidationGroup="Validation"/> 

    <asp:TextBox ID="txtrandom" runat="server"></asp:TextBox> 
    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" 
           ErrorMessage="Enter the Randomly generated numbers" 
           ControlToValidate="txtrandom" Display="None" 
           ValidationGroup="Validation" SetFocusOnError="true" > 
    </asp:RequiredFieldValidator> 

    <asp:RegularExpressionValidator ID="RegularExpressionValidator2" 
            runat="server" ErrorMessage="Input should be in number" 
            ValidationExpression="^[0-9]+$" 
            ControlToValidate="txtrandom" 
            Display="None" 
            ValidationGroup="Validation" 
            SetFocusOnError="true" > 
    </asp:RegularExpressionValidator> 

В backend(c#) у меня есть эти строки кода

int random = 0; 
bool isValidInt = int.TryParse(txtrandom.Text, out random); 
for (int i = 0; i < random; i++) 
{ 
    //other codes 
} 

делает эти строки кода эффекта validation или просто syntactical error? Любая помощь appreciated.As Насколько я знаю, что он текстовое поле принимает 0 в качестве значения по умолчанию.

+0

В ваших валидаторах я вижу, что у вас есть 'Display = None'. Вы пробовали это без этого? – Koen

+0

Да @Koen пока не отображается сообщение подтверждения. –

+1

У вас есть кнопка отправки, настроенная в той же группе ValidationGroup? –

ответ

0

Присвоить Validation группы TextBox как это:

<asp:TextBox ID="txtrandom" runat="server" ValidationGroup="Validation"></asp:TextBox> 
0

Вы можете попробовать этот код, я также использую этот код числовой проверки

bool isnum; 
double numericval; 
isnum = double.TryParse(numval, out numericval); 
if (isnum) 
{ return true; } 
else { return false; } 
1

Проблема с группой проверки. Если вы не используете группу проверки, все будет работать, но если вы указали группу проверки, тогда группа должна быть включена в событии нажатия кнопки или что-то подобное.

см. Мой код. он работает нормально.

<div> 
    <asp:ValidationSummary ID="ValidationSummary1" runat="server" 
    ShowMessageBox="True" DisplayMode="BulletList" 
HeaderText="Validation issues" ShowSummary="false" ValidationGroup="one" /> 

<asp:TextBox ID="txtrandom" runat="server" ></asp:TextBox> 
<asp:TextBox ID="TextBox1" runat="server" ></asp:TextBox> 
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" 
          ErrorMessage="Enter the Randomly generated numbers" Display="None" 
          ControlToValidate="txtrandom" ValidationGroup="one" > 
</asp:RequiredFieldValidator> 
    <asp:RegularExpressionValidator ID="RegularExpressionValidator2" 
           runat="server" ErrorMessage="Input should be in number" 
           ValidationExpression="^[0-9]+$" 
           ControlToValidate="txtrandom" 
           Display="None" 
           ValidationGroup="one" 
           SetFocusOnError="true" > 
</asp:RegularExpressionValidator> 
<asp:Button ID="test" runat="server" Text="Submit" ValidationGroup="one" /> 
</div> 

да и группа проверки может быть вызвана на сообщении об ошибке после back.So обыкновения показывать onfocouschange так же, как обычная проверка.

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