打开APP
未登录
开通VIP,畅享免费电子书等14项超值服
开通VIP
首页
好书
留言交流
下载APP
联系客服
ASP.NET验证控件之CustomValidator
昵称10504424
>《C#》
2013.03.13
关注
CustomValidator是用户自定义的验证控件,用来响应用户自定义的验证。可以使JS的客户端函数,也可以是写在后台代码中的服务端验证函数。
以下是CustomValidator的常用属性
属性
描述
BackColor
背景颜色。
ClientValidationFunction
规定用于验证的自定义客户端脚本函数的名称。
注释:脚本必须用浏览器支持的语言编写,比如 VBScript 或 JScript
使用 VBScript 的话,函数必须位于表单中:
Sub FunctionName (source, arguments)
使用 JScript 的话,函数必须位于表单中:
Function FunctionName (source, arguments)
ControlToValidate
要验证的输入控件的 id。
Display
验证控件中错误信息的显示行为。
合法的值有:
· None - 验证消息从不内联显示。
· Static - 在页面布局中分配用于显示验证消息的空间。
· Dynamic - 如果验证失败,将用于显示验证消息的空间动态添加到页面。
EnableClientScript
布尔值,该值指示是否启用客户端验证。
Enabled
布尔值,该值指示是否启用验证控件。
ErrorMessage
验证失败时 ValidationSummary 控件中显示的错误信息的文本。
注释:如果设置了 ErrorMessage 属性但没有设置 Text 属性,则验证控件中也将显示 ErrorMessage 属性的值。
ForeColor
控件的前景色。
id
控件的唯一 id。
IsValid
布尔值,该值指示关联的输入控件是否通过验证。
OnServerValidate
规定被执行的服务器端验证脚本函数的名称。
runat
规定该控件是服务器控件。必须设置为 "server"。
Text
当验证失败时显示的文本。
学以致用,看看CustomValidator在实际当中的应用
[html] view plaincopyprint?
<%@ Page Language="C#" AutoEventWireup="true" Inherits="Default2" Codebehind="Default2.aspx.cs" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>用户自定义控件</title>
<script type="text/javascript" language="javascript">
function Clientv(s,e)
{
e.IsValid=(e.Value=="客户端");
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
客户端验证
<asp:TextBox ID="txtClient" runat="server"></asp:TextBox>
<asp:CustomValidator ID="CustomValidator2" runat="server" ControlToValidate="txtClient"
ErrorMessage="客户端验证失败" ClientValidationFunction="Clientv" ForeColor="Red"></asp:CustomValidator>
<br />
服务器验证
<asp:TextBox ID="txtServer" runat="server"></asp:TextBox>
<asp:CustomValidator ID="CustomValidator1" runat="server" ControlToValidate="txtServer"
ErrorMessage="服务端验证失败" OnServerValidate="Server_ServerValidate" ForeColor="Red"></asp:CustomValidator>
</div>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="提交" />
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="true" Inherits="Default2" Codebehind="Default2.aspx.cs" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" ><head runat="server"> <title>用户自定义控件</title> <script type="text/javascript" language="javascript"> function Clientv(s,e) { e.IsValid=(e.Value=="客户端"); } </script></head><body> <form id="form1" runat="server"> <div> 客户端验证 <asp:TextBox ID="txtClient" runat="server"></asp:TextBox> <asp:CustomValidator ID="CustomValidator2" runat="server" ControlToValidate="txtClient" ErrorMessage="客户端验证失败" ClientValidationFunction="Clientv" ForeColor="Red"></asp:CustomValidator> <br /> 服务器验证 <asp:TextBox ID="txtServer" runat="server"></asp:TextBox> <asp:CustomValidator ID="CustomValidator1" runat="server" ControlToValidate="txtServer" ErrorMessage="服务端验证失败" OnServerValidate="Server_ServerValidate" ForeColor="Red"></asp:CustomValidator> </div> <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="提交" /> </form></body></html>
写在cs文件中的服务端验证函数
[csharp] view plaincopyprint?
//服务端的验证方法
protected void Server_ServerValidate(object source, ServerValidateEventArgs args)
{
args.IsValid=(args.Value=="服务端");
}
//服务端的验证方法 protected void Server_ServerValidate(object source, ServerValidateEventArgs args) { args.IsValid=(args.Value=="服务端"); }
客户端提示验证失败,而且此时不再提交信息,所以服务端验证不会被执行。
客户端验证通过,服务端验证失败。
有一点需要注意一下,就是CustomValidator不会对空值或者全部为空格的内容进行验证,这一点可以通过跟之前讲的其他控件配合使用。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报
。
打开APP,阅读全文并永久保存
查看更多类似文章
猜你喜欢
类似文章
【热】
打开小程序,算一算2024你的财运
使用自定义函数对 ASP.NET 服务器控件进行验证
CustomValidator实际应用篇
ASP.NET六种验证控件
ASP.NET验证控件[转]
asp.net 给用户控件增加事件和属性
asp.net生成静态页的两种方法
更多类似文章 >>
生活服务
热点新闻
留言交流
回顶部
联系我们
分享
收藏
点击这里,查看已保存的文章
导长图
关注
一键复制
下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!
联系客服
微信登录中...
请勿关闭此页面
先别划走!
送你5元优惠券,购买VIP限时立减!
5
元
优惠券
优惠券还有
10:00
过期
马上使用
×