1

我有一个程序,它有几个正则表达式验证器,它们过滤掉用户的非数字输入。

<asp:RegularExpressionValidator ID="RegularExpressionValidator1" class="errorMess" ErrorMessage="Letters are not Allowed!!" ControlToValidate="CelNo" ValidationExpression="\d+" runat="server" />

但是,我观察到 RegularExpressionValidators 仅打印出错误消息,但不会阻止用户输入错误数据。

因此,我想知道如何在后端代码中验证 RegularExpressionValidator,以便在将值传递给查询之前设置限制。

例如,如果消息可见,则执行将停止。当然还有其他一些方法可以过滤掉非数字数据。但我只想讨论通过 RegularExpressionValidator 来做。

我试过这样。但不明白为什么它不起作用:

    If RegularExpressionValidator1.IsValid Then

        MsgBox("Ya")

    Else
        MsgBox("Niht")
    End If

这是前端代码:

<asp:TextBox ID="CelNo" runat="server"></asp:TextBox>
   <asp:RegularExpressionValidator ID="RegularExpressionValidator1" ErrorMessage="Letters are not Allowed!!" ControlToValidate="CelNo" ValidationExpression="\d+"
        runat="server" />
<asp:Button ID="Button5" runat="server" Text="Button" />
4

1 回答 1

4

您可以使用Page.IsValid...检查它

if(Page.IsValid)
{
   //your Stff
}
else
{
   //show your notification
}

或者你可以这样做......

if(YourRegularExpressionId.IsValid==true)
{
   //your Stff
}
else
{
   //show your notification
}
于 2013-05-05T13:27:30.623 回答