http://topic.csdn.net/u/20071224/15/0ce4deb3-9011-4377-b61e-523fb42e6d04.html参考下

解决方案 »

  1.   


     <input name="AgreementCode" type="text" id="AgreementCode" size="20" maxlength="50" title="只允许英文字母(不区别大小写),数字及下划线" onBlur="if(!/^(\d|\w|\s|\-|\_)*$/.test(value)) {alert('編號只能輸入英文字母,數字_-等字符'),   this.focus(), this.select();}">
      

  2.   

    不可以的,不能有alert提示的,直接不允许输入了
      

  3.   

    下面代码的话输入的中文字显示后马上替换.........
    在未显示前禁止不知道怎么弄了,ff在中文状态下不接受keydown
    //注册事件,在ie下时注册onkeypress,ff时改为注册onkeydown事件,要不无法获取event的keyCode
         if(document.all)
         {
           oObj.onkeypress=function()     
           {     
             return regInput(this,reg,String.fromCharCode(event.keyCode));//输入时激发     
           }     
         }
         else
         {
           oObj.onkeydown = EventHandler;  //ff改为onkeydown事件  
           oObj.oncontextmenu=function(){return false;}; //禁止右键的粘贴  
           oObj.onkeyup=function()
           {
             this.value=this.value.replace(/[^0-9]/,"");//替换非中文字符
           }  
         }     function EventHandler(e)//===========此为ff的方法
         {
           e=e||event;
           if(e.ctrlKey)//禁止粘贴"ctrl+V"
             return false;
           //不为“<-键”,“Delete键”和方向键时
           else if(e.keyCode!=8&&e.keyCode!=46&&e.keyCode!=37&&e.keyCode!=38&&e.keyCode!=39&&e.keyCode!=40)
             return reg.test(String.fromCharCode(e.keyCode));
         }
      

  4.   

    可以的,不能有alert提示的,直接不允许输入了
      

  5.   

    可以的,不能有alert提示的,直接不允许输入了
      

  6.   

     oObj.onkeyup=function()
           {
             this.value=this.value.replace(/[^0-9]/gi,"");//替换非中文字符,刚才忘记加标记g了..........
           }  
      

  7.   

    //注册事件,在ie下时注册onkeypress,ff时改为注册onkeydown事件,要不无法获取event的keyCode
         if(document.all)
         {
           oObj.onkeypress=function()     
           {     
             return regInput(this,reg,String.fromCharCode(event.keyCode));//输入时激发     
           }     
         }
         else
         {
           oObj.onkeydown = EventHandler;  //ff改为onkeydown事件  
           oObj.oncontextmenu=function(){return false;}; //禁止右键的粘贴  
           oObj.onkeyup=function()
           {
             this.value=this.value.replace(/[^0-9]/,"");//替换非中文字符
           }  
         }     function EventHandler(e)//===========此为ff的方法
         {
           e=e||event;
           if(e.ctrlKey)//禁止粘贴"ctrl+V"
             return false;
           //不为“<-键”,“Delete键”和方向键时
           else if(e.keyCode!=8&&e.keyCode!=46&&e.keyCode!=37&&e.keyCode!=38&&e.keyCode!=39&&e.keyCode!=40)
             return reg.test(String.fromCharCode(e.keyCode));
         }
      

  8.   

    //注册事件,在ie下时注册onkeypress,ff时改为注册onkeydown事件,要不无法获取event的keyCode
         if(document.all)
         {
           oObj.onkeypress=function()     
           {     
             return regInput(this,reg,String.fromCharCode(event.keyCode));//输入时激发     
           }     
         }
         else
         {
           oObj.onkeydown = EventHandler;  //ff改为onkeydown事件  
           oObj.oncontextmenu=function(){return false;}; //禁止右键的粘贴  
           oObj.onkeyup=function()
           {
             this.value=this.value.replace(/[^0-9]/,"");//替换非中文字符
           }  
         }     function EventHandler(e)//===========此为ff的方法
         {
           e=e||event;
           if(e.ctrlKey)//禁止粘贴"ctrl+V"
             return false;
           //不为“<-键”,“Delete键”和方向键时
           else if(e.keyCode!=8&&e.keyCode!=46&&e.keyCode!=37&&e.keyCode!=38&&e.keyCode!=39&&e.keyCode!=40)
             return reg.test(String.fromCharCode(e.keyCode));
         }