我正在创建一个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)
答案 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>
您可以将上述内容复制并粘贴到您的页面上。