在前面text的keypress事件里处理,首选判断是否到达指定长度,如果到了,后一个text.focus()

解决方案 »

  1.   

    dxef(丁丁)说的方法我考虑了,但是text有很多,有20多个,难道要写20多个function?
    我想知道html的object有没有响应tab的事件,如果没有也只好按照你说的做了
      

  2.   

    try
    -------------------------------
    <input type="text" maxlength="12" onkeydown="if(this.value.length==this.maxLength*1)event.keyCode=9">
    <input type="text" maxlength="10">
      

  3.   

    改进了一下,这样所有的text就都可以自动跳到下一个了
    ------------------------------------------------<input type="text" maxlength="12">
    <input type="text" maxlength="10">
    <script language="javascript">
    var text = document.getElementsByTagName("input");
    for(var i=0;i<text.length;i++){
    if(text[i].type=="text"){
    text[i].onkeydown=function(){
    if(this.value.length==this.maxLength && event.keyCode!=8 && event.keyCode!=46 && !(event.keyCode>=37 && event.keyCode<=40))event.keyCode=9
    }
    }
    }
    </script>
      

  4.   

    如果能够允许 鼠标选择的增亮显示的文本能够修改,并且支持ctrl+c就完美了
    好象难度不小
      

  5.   

    最终修正版
    ------------------------------------
    <input type="text" maxlength="3">
    <input type="text" maxlength="4">
    <input type="text" maxlength="5">
    <input type="text" maxlength="7">
    <script language="javascript">
    var text = document.getElementsByTagName("input");
    var j=0;
    for(var i=0;i<text.length;i++){
    if(text[i].type=="text"){
    j=i;
    text[i].index=i;
    text[j].nextIndex=i;
    text[i].onkeyup=function(){
    if(this.value.length==this.maxLength && event.keyCode!=8 && event.keyCode!=46 && !(event.keyCode>=37 && event.keyCode<=40))
    text[this.nextIndex+1].focus();
    }
    }
    }
    </script>