1. 程式人生 > >自定義客戶端驗證控制元件 CustomValidator

自定義客戶端驗證控制元件 CustomValidator

今天經過反覆試驗.才得出如何利用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> 



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1482154