自定义验证

5 篇文章 0 订阅
 
在服务器端执行验证:
   1、利用控件的事件
(1)HTML视图
  <body>
    <form id="form1" runat="server">
        <asp:TextBox ID="txt" runat="server"></asp:TextBox>
        <asp:CustomValidator ID="CustomValidator1" ControlToValidate="txt" runat="server" ErrorMessage="服务器端验证,输入值非偶数! " OnServerValidate="CustomValidator1_ServerValidate"></asp:CustomValidator>
<asp:Button ID="Button1" runat="server" Text="Button" />
    </form>
</body>
(2)在 VB代码窗口构造事件
Protected Sub CustomValidator1_ServerValidate(ByVal source As Object, ByVal args As System.Web.UI.WebControls.ServerValidateEventArgs) Handles CustomValidator1.ServerValidate
        If args.Value Mod 2 = 0 Then
            args.IsValid = True
        Else
            args.IsValid = False
        End If
End Sub
注: ServerValidate是CustomValidator1自有的事件。
1、利用自定义的方法
(1)HTML视图
<body>
    <form id="form1" runat="server">
        <asp:TextBox ID="txt" runat="server"></asp:TextBox>
        <asp:CustomValidator ID="CustomValidator1" ControlToValidate="txt" runat="server" ErrorMessage="服务器端验证,输入值非偶数! " OnServerValidate=" SerValidate"></asp:CustomValidator>
<asp:Button ID="Button1" runat="server" Text="Button" />
    </form>
</body>
(2)在VB代码窗口建立自定义方法
Protected Sub SerValidate (ByVal source As Object, ByVal args As System.Web.UI.WebControls.ServerValidateEventArgs)
        If args.Value Mod 2 = 0 Then
            args.IsValid = True
        Else
            args.IsValid = False
        End If
End Sub
注:SerValidate是自定义方法
<asp:TextBox ID="tb" runat="server"></asp:TextBox>
        <asp:CustomValidator ID="CustomValidator2" runat="server" ControlToValidate="tb"
            ErrorMessage="客户端验证,输入值非偶数! " ClientValidationFunction="ClientValidate"></asp:CustomValidator>
        <asp:Button
            ID="Button2" runat="server" Text="Button" /></div>
在客户端执行验证:
1、用javascript构造函数(javascript代码区分大小写,注意严格大小写)
(1)HTML视图
<body>
<form id="form1" runat="server">
        <asp:TextBox ID="tb" runat="server"></asp:TextBox>
        <asp:CustomValidator ID="CustomValidator2" runat="server" ControlToValidate="tb" ErrorMessage="客户端验证,输入值非偶数! " ClientValidationFunction="ClientValidate"></asp:CustomValidator>
        <asp:Button ID="Button2" runat="server" Text="Button" />
</form>
</body>
(2)javascript函数
<head runat="server">
    <title>验证控件示例 </title>
    <script language=javascript>
      function ClientValidate(source, arguments)
      {
        if ((arguments.Value % 2)==0)
          arguments.IsValid=true;
        else
          arguments.IsValid=false;
       }     
    </script>
</head>
2、用vbscript构造函数
(1)HTML视图
<body>
<form id="form1" runat="server">
        <asp:TextBox ID="tb" runat="server"></asp:TextBox>
        <asp:CustomValidator ID="CustomValidator2" runat="server" ControlToValidate="tb" ErrorMessage="客户端验证,输入值非偶数! " ClientValidationFunction="ClientValidate"></asp:CustomValidator>
        <asp:Button ID="Button2" runat="server" Text="Button" />
</form>
</body>
(2)vbscript函数
<head runat="server">
    <title>验证控件示例 </title>
<script language="vbscript">
Sub ClientValidate(source, arguments)
If (arguments.Value mod 2) = 0 Then
         arguments.IsValid=true
      Else
         arguments.IsValid=false
      End If
End Sub
</script>
</head>
注意:创建客户端验证函数时,请务必同时包括服务器端验证函数的功能。如果创建客户端验证函数时不存在相应的服务器端函数,则恶意代码可能会绕过验证。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值