如何包含异常处理?

时间:2013-04-02 23:55:04

标签: asp.net vb.net web-applications visual-studio-2012

我正在创建一个Web表单,它接受某些事物的用户输入并在点击确定后显示它...但我没有办法检查输入是否有效。 VB对我来说是新的,我会想象“如果”语句会起作用......但它们看起来并不像。

Public Class HelloForm
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    End Sub

    Protected Sub cmdOk_Click(sender As Object, e As EventArgs) Handles cmdOk.Click
        msgLabel.Text = nameTextBox.Text + ", " + lastTextBox.Text + "; " + addrTextBox.Text + ", " +
                        cityTextBox.Text + ", " + stateTextBox.Text + ", " + zipTextBox.Text + "; " +
                        phoneTextBox.Text



    End Sub
End Class

当我运行它时,一切正常。但是说如果我包含无效的电话号码或邮政编码(某事)。我如何以及在哪里包含异常处理来执行此操作?

如果我在电话号码输入中输入“asdhasd”,我希望它说“电话号码无效”。

(我想我可能应该包括一个清除所有输出/输入的按钮。; x)

1 个答案:

答案 0 :(得分:2)

我认为你需要的是将一些RequiredFieldValidator和Regular ExpressionValidator拖到他们最常用于验证输入的页面上......

将它们拖到您的texbox旁边..

您的电话号码文本框的示例如下:

   <asp:RegularExpressionValidator ID="RegularExpressionValidator2"
    ControlToValidate="phoneTextBox" ErrorMessage="Numbers only" 
    runat="server"  ValidationExpression="^[0-9]+$" Display="Dynamic">
   </asp:RegularExpressionValidator>

要将手机文字框设为必填字段:

    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
      ErrorMessage="*Please enter phone number"
      ControlToValidate="phoneTextBox" Display="Dynamic">
    </asp:RequiredFieldValidator>

要使您的名称文本框仅包含字符:

    <asp:RegularExpressionValidator ID="RegularExpressionValidator1" ControlToValidate="nameTextBox"
        ErrorMessage="Letters only" runat="server" ValidationExpression="^[a-zA-Z]+$" Display="Dynamic"></asp:RegularExpressionValidator>

您可以将上述内容复制并粘贴到您的页面上。