CustomValidator验证控件使用

CustomValidator验证控件使用

CustomValidator控件允许用户自定义验证,可以在服务器端验证,可以在客户端验证,也可以在客户端和服务端同时验证

下面的例子是验证一个数能否被2整除

1.      服务器端验证
在验证的时候会用到IsValid这个属性,根据IsValid的值(true/false)来判断是否通过页面验证。

a.       拖放控件TextBox用于输入值;Button用于测试验证状态,IsValid为true触发Click事件;CustomValidator控制要验证的对象和验证事件等。

b.      设置CustomValidator的属性这里设置ErrorMessage为Not an even number!,ControlToValidate为Text1

c.       编写CustomValidator的ServerValidation事件

   

protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
    {

         try
        {
            int num = int.Parse(args.Value);           
            args.IsValid = ((num%2)==0);
        }
        catch (Exception ex)
        {
            args.IsValid = false;
        }
    }

 

d.      编写Button的Click事件

    protected void Button2_Click(object sender, EventArgs e)
    {
        if (Page.IsValid)
        {
            Response.Redirect("gouWuChe.aspx");
        }
        else
        {
            //提示
        }

    }

2.      客户端验证

使用javascript function验证,并用设置ClientValidationFunction为javascript 验证函数(function)

a.       Javascript 函数

    <script language="javascript">

    function ValidateNumber(source,args)

    {

        if(args.Value%2==0)

        {

            args.IsValid=true;

        }

       else

        {

            args.IsValid=false;

        }

    }

    </script>

b.      设置CustomValidator的属性这里设置ErrorMessage为请输入能被2整除的数,ControlToValidate为TextBox1, ClientValidationFunction为ValidateNumber

c.       编写Button的Click事件 

    protected void Button2_Click(object sender, EventArgs e)
    {
        if (Page.IsValid)
        {
            Response.Redirect("gouWuChe.aspx");
        }
        else
        {
            //提示
        }

    }

3.      客户端和服务端同时验证

将上面的两部分代码合并可以了

转载于:https://www.cnblogs.com/duwx/archive/2010/08/27/1809892.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值