zss1100
爱就要负责

今天经过反复试验.才得出如何利用CustomValidator来验证textbox的长度.  
  首先,如思归老兄所说,在page_load添加  
   
  CustomValidator1.Attributes["len"]   =   "123";  
   
  即定义长度值.然后   写客户端验证函数  
   
  <script   language="javascript">  
  function   DataLength(source,   arguments)  
  {  
  var   len   =   source.length;  
  if(Form1.TextBox.value.length<=len)  
  {  
  arguments.IsValid   =   true;  
  }  
  else  
  {  
  arguments.IsValid   =   false;  
  }  
  }  
  </script>  
   
  注有2处不同  
   
  var   len   =   source.length;获取长度范围  
   
  if(Form1.TextBox.value.length<=len)这里有没有其他写法.就不知道了.有研究更深的兄弟告诉一下.  
   

 

<script language="javascript">
    function ClientValidation(source,value)
    {
        var str = value.Value;
        var len = 0;
        for(var i=0;i<str.length;i++)
        {
            if(str.charCodeAt(i)<128)
                len++;
            else
                len+=2;
        }
        if(len>5)
            value.IsValid = true;
        else
            value.IsValid = false;
    }
</script>
<asp:CustomValidator id="CustomValidator1" ControlToValidate="TextBox2" ClientValidationFunction="ClientValidation" Runat="server" ErrorMessage="长度6-20位"></asp:CustomValidator> 

posted on 2007-03-04 17:23  打你鸟鸟头  阅读(199)  评论(0)    收藏  举报