<html>   
  <head>   
  <script   language="javascript">   
  function TestLen(obj){
   if(obj.value.length>=6){
   alert('error');
   return false;
   }
  }
  </script>   
  </head>   
  <body>   
<input type="text" name="txt"  onblur="TestLen(this)">输入字符鼠标移开
  </body>   
  </html>  
正常文本框 就用maxlength属性控制就行了!

解决方案 »

  1.   

    function judge()
    {
         var a = "1234567";
         if(a.length > 6)
         {
           alert("提示语!!!");
         }
    }
      

  2.   

    呵呵,也可以直接设置
    <input type="text" name="txt"  onblur="TestLen(this) maxlength=6">
      

  3.   

    <html>   
      <head>   
      <script   language="javascript">   
      function TestLen(){
          var obj = document.getElementById('txt1').value;
          if(obj.value.length>=6){
              alert('error');
              return false;
          }
      }
      </script>   
      </head>   
      <body>   
    <input type="text" name="txt"  onblur="TestLen() id="txt1"">
      </body>   
      </html>  
    呵呵,其实跟1楼是一样滴~~~
      

  4.   

    当utf8 编码时中文会有问题。
    比如说数据库设置成6个字符页面上用以上方式控制的话可以输入6个汉字,但是插入到数据库会溢出function CheckLength(param)
    {
        var container = document.getElementById( param.Control.id );
        var mlen = 0 ;
        if( container.maxLength && container.maxLength !="") 
        {
            try{
                mlen = parseInt(container.maxLength) ;
            }catch(e){mlen=0;}
        }
        if(mlen ==0) return true;
        var s=param.Control.value;
        var n=0;
        for (var i=0;i<s.length;i++)
        {
         if (s.charCodeAt(i)>255){
                      //s.charCodeAt(i)为非ascii字符
          n=n+2;
                 }else{
                      //s.charCodeAt(i)为ascii字符
          n=n+1;
                 }
        }
        if(n>mlen)
           {
              param.MessagePanel.Show( container , "编号长度不能超过"+mlen+"个字符(汉字认为两个字符)") ; 
              container.focus();
              return false; 
           } 
           return true ;
    }