当我们我要求使用者输入数据的时候,一定要执行数据验证的工作。数据验证是一种限制使用者
输入的限制(Constraint),可以确定使用者所输入的数据是正确的,或是强迫使用者一定要输
入数据。先执行数据验证比输入错误的数据后,再让数据库响应一个错误讯息来的有效率;也可
以确保使用者所输入的数据是一个有效值,而不会造成垃圾数据。数据验证Web 控件可以帮助
我们少写许多程序来验证使用者输入的数据,下表列出ASP.NET 所提供的数据验证Web 控件:
RequireFieldValidator Web 控件
RequireFieldValidator Web 控件可以用来强迫使用必需输入数据,其使用语法为:
<ASP:RequireFieldValidator
Id="被程序代码所控制的名称"
Runat="Server"
ControlToValidate="要验证的控件名称"
ErrorMessage="所要显示的错误信息"
Text="未输入数据时所显示的讯息"
/>
其常用属性说明如下表所示:
ControlToValidate 属性用来指明要检验的控件,而ErrorMessage 属性用来提供给其它控件显示
相关讯息,Text 属性在使用者的输入没有通过验证时立即显示。下列程序代码限制姓名字段一
定要输入,否则无法触发按钮的事件程序:
<Html>
<Form Id="Form1" Runat="Server">
姓名: <ASP:TextBox Id="txtName" Runat="Server"/>
<ASP:RequiredFieldValidator Id="Validor1" Runat="Server"
ControlToValidate="txtName"
Text="必填项目"/><br>
电话: <ASP:TextBox Id="txtTel" Runat="Server"/><br>
住址: <ASP:TextBox Id="txtAdd" Runat="Server"/><br>
<ASP:Button Id="btnOK" Text="确定" OnClick="btnOK_Click"
Runat="Server"/>
<ASP:Label Id="lblMsg" Runat="Server"/>
</Form>
<Script Language="VB" Runat="Server">
Sub btnOK_Click(Sender As Object,e As EventArgs)
If Page.IsValid Then
lblMsg.Text="验证成功!"
End If
End Sub
</Script>
</Html>
倘若使用没有输入姓名字段而按下确定按钮,不但不会触发任何事件程序外,还会显示提示讯息,
如下图所示:
倘若使用有输入姓名字段而按下确定按钮,则正常触发事件程序,如下图所示:
Page.IsValid 属性
要判断使用者输入的资料是否通过验证时,可以检查Page 对象的IsValid 属性。如果IsValid 属
性为True,则表示所有的控件都通过验证;反之则代表有控件没有通过。
书 名:ASP.NET 程序设计基础篇
出版日期:2001/06/15
书 号:957-2085-72-7
I S B N :957-2085-72-7
原 作 者:林煌章