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在实际当中的应用

<%@ 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文件中的服务端验证函数

    //服务端的验证方法protected void Server_ServerValidate(object source, ServerValidateEventArgs args){args.IsValid=(args.Value=="服务端");}

客户端提示验证失败,而且此时不再提交信息,所以服务端验证不会被执行。

客户端验证通过,服务端验证失败。

有一点需要注意一下,就是CustomValidator不会对空值或者全部为空格的内容进行验证,这一点可以通过跟之前讲的其他控件配合使用。

ASP.NET验证控件之CustomValidator相关推荐

  1. CustomValidator ASP.NET验证控件

    CustomValidator ASP.NET验证控件 CustomValidator控件允许您用自定义的验证逻辑创建验证控件.例如,可以创建一个验证控件,该控件检查在文本框中输入的值是否为偶数.创建 ...

  2. ASP.NET验证控件详细使用解释

    ASP.NET是微软推出的下一代WEB开发工具,其强大的功能立即吸引了一大批WEB开发者投入它的靡下.现在,我们来看看ASP.NET的验证控件,感受ASP.NET的强大功能同时方便我们现在的WEB开发 ...

  3. 【转】ASP.NET验证控件详解(非空验证,比较验证,范围验证,正则表达式,自定义验证)...

    [转]ASP.NET验证控件详解(非空验证,比较验证,范围验证,正则表达式,自定义验证) ASP.NET验证控件详解 现在ASP.NET,你不但可以轻松的实现对用户输入的验证,而且,还可以选择验证在服 ...

  4. ASP.NET 验证控件安全隐患

    本文就是给过分相信,ms asp.net 验证控件的,和 js 验证的朋友的一个忠告!请不要用本方法去黑人. ASp.net 的全部客户端验证控制都是放在一个: %SystemDrive%/Inetp ...

  5. ASP.NET 验证控件

    ASP.NET公有六种验证控件,分别如下: 控件名 功能描叙 RequiredFieldValidator(必须字段验证) 用于检查是否有输入值 CompareValidator(比较验证) 按设定比 ...

  6. ASP.NET验证控件

    在此过程中房间的收费制度时,.为了验证文本框是否为空.用户存在.合法等等.我们都要单独写代码.学习了ASP.NET的验证控件,省了非常多事. ASP.NET能够轻松实现对用户输入的验证. 让我们好好回 ...

  7. Asp.Net验证控件和表达式测试题

    题型 题干 答案 答案解析 标签 选项A 选项B 选项C 选项D 选项E 选项F 选项G 选项H 选项I 选项J 单选题 ASP.NET框架中,服务器控件是为配合Web表单工作而专门设计的.服务器控件 ...

  8. ASP.NET验证控件祥解

    ASP.NET是微软推出的下一代WEB开发工具,其强大的功能立即吸引了一大批WEB开发者投入它的靡下.现在,我们来看看ASP.NET的验证控件,感受ASP.NET的强大功能同时方便我们现在的WEB开发 ...

  9. ASP.NET验证控件详解

    ASP.NET六种验证控件,分别如下: RequiredFieldValidator(必须字段验证) 用于检查是否有输入值 CompareValidator(比较验证) 按设定比较两个输入 Range ...

最新文章

  1. 成功解决ModuleNotFoundError: No module named 'keras_resnet'
  2. 嗯?time命令Linux time // 对比印象中的time()函数
  3. angular下拉框点击无反应_固定床反应器,你知道多少?
  4. 【渝粤教育】国家开放大学2019年春季 3717天然气管道长输技术 参考试题
  5. Linux 金字塔 的shell命令,linux下保留文件系统下剩余指定数目文件的shell脚本
  6. SEH in ASM 研究(一)
  7. excel如何把顺序倒过来_春节酒局多,这些葡萄酒倒酒礼仪你一定要知道
  8. git 创建webpack项目_从 0 开始构建 webpack 项目【Webpack Book 翻译】
  9. Premiere视频导出格式
  10. 微软私有云系列 ----SQL 云部署
  11. Linux服务器建立IP隧道,变更访问出口
  12. CS144——Lab0——networking warmup
  13. 达人篇:5)公差的正态分布与CPK与制程能力(重要)
  14. 电脑开机后显示屏只显示品牌Logo就黑屏
  15. itunes无法安装到win7系统更新服务器,win7系统无法安装itunes应用程序的解决方案...
  16. Redis应用项目---抢红包功能(三)
  17. Linux常用命令有哪些
  18. 基于Django实现Linux运维管理平台的整个实现过程和各种API接口调用以及Echarts绘图项目介绍(一)记录点滴生活
  19. 检查suse是否安装ftp服务,安装:SuSE Linux FTP版安装指南(转)
  20. ec2 linux root,亚马逊EC2服务器centos7 如何开启root账号登陆

热门文章

  1. idea2021配置GitGitHub账号登录授权
  2. 漫水填充(泛洪填充、油漆桶)的C#实现(解决堆溢出问题)
  3. 免费POSIX标准下载
  4. 虚拟机安装Ubuntu16.04详细步骤
  5. python手绘教学_Python实现手绘图效果实例分享
  6. virbr0怎么关闭_CentOS 7中关闭删除virbr0虚拟网卡
  7. 谷歌输入法的英文联想功能(v3.0 beta)
  8. HTML5 Canvas实现web画图之自由画笔
  9. ESXi忘记root密码后重置
  10. 适合苹果平板的思维导图软件有哪些