script type="text/javascript"> 
    function LoginSetFocus(obj) 
    { 
        
        if(event.keyCode==13||event.keyCode==9) 
        { 
            alert(event.keyCode); 
            document.getElementById(obj).focus();                                                      } 
    } 
</script> 
<input name="a" type="text" id="a" onkeyup="LoginSetFocus('c')" />
<input name="b" type="text" id="b" onkeyup="LoginSetFocus('a')" />
<input name="c" type="text" id="c" onkeyup="LoginSetFocus('b')" />测试可是有效的啊

解决方案 »

  1.   

    <script type="text/javascript"> 
        function LoginSetFocus(event,obj) 
        { 
            
            if(event.keyCode==13||event.keyCode==9) 
            { 
                alert(event.keyCode); 
                document.getElementById(obj).focus();                                                      } 
        } 
    </script> 
    <input name="a" type="text" id="a" onkeyup="LoginSetFocus(event,'c')" />
    <input name="b" type="text" id="b" onkeyup="LoginSetFocus(event,'a')" />
    <input name="c" type="text" id="c" onkeyup="LoginSetFocus(event,'b')" />这样才兼容FF
      

  2.   

    UP 不行啊
    http://www.yy-sports.com/Member/UserLogin.aspx
    我要在用户名里回车或按Table时转到密码 密码到 验证码 但现在table就到那个"注册"的链接
      

  3.   

    表格布局改一下。(注册) 和 (用户名,密码,验证码)不要放在一个table里。分开放2个平行的table。外面再套一个table就好了。
      

  4.   

    我觉得把文本框全部放进表单里就不用考虑这个问题了。按Tab键会自动切换获取光标的。
      

  5.   

    RE:表格布局改一下。(注册) 和 (用户名,密码,验证码)不要放在一个table里。分开放2个平行的table。外面再套一个table就好了。 
    -------------------------------------------------------------------------------
    现在就是要在不改变网页布局而实现我要的功能
    本来感觉很简单
    但写js怎么也写不好
    谢谢
      

  6.   

    <script type="text/javascript"> 
    function SetFocus(e,obj) { 
     e=e||event;
     if(e.keyCode==13||e.keyCode==9){
    //要阻止默认的行为,要不tab照样执行默认的行为
      if(e.preventDefault)e.preventDefault();//ff
      else e.keyCode=0;//ie
      document.getElementById(obj).focus();
     } 

    </script> 
    <!-----时间使用keydown,使用keyup时,当使用tab切换时会使指定的id获取不到焦点,而且也不能阻止默认的行为---->
    <input name="a" type="text" id="a" onkeydown="SetFocus(event,'c')" />
    <input name="b" type="text" id="b" onkeydown="SetFocus(event,'a')" />
    <input name="c" type="text" id="c" onkeydown="SetFocus(event,'b')" />
    <a href='xx'>xx</a>
      

  7.   

    <!-----时间使用keydown,使用keyup时,当使用tab切换时会使指定的id获取不到焦点,而且也不能阻止默认的行为---->
    你说获取不到?为什么我用他获取到?是什么浏览器获取不到吗??
      

  8.   

    //要阻止默认的行为,要不tab照样执行默认的行为
      if(e.preventDefault)e.preventDefault();//ff
      else e.keyCode=0;//ie还有你说的这个,我没有写,还是能实现使用tab切换时会到指定的焦点
    IE6.0和FF3.0我测试了都有用只是不知道你说的这个在什么地方说会获取不到焦点
    <script type="text/javascript"> 
    function LoginSetFocus(event,obj) { 
            
            if(event.keyCode==13||event.keyCode==9) 
            { 

    //要阻止默认的行为,要不tab照样执行默认的行为
      //if(event.preventDefault)event.preventDefault();//ff
      //else event.keyCode=0;//ie
      document.getElementById(obj).focus();                                                } 
        } 
    </script> 
    <input name="a" type="text" id="a" onkeyup="LoginSetFocus(event,'c')" />
    <input name="b" type="text" id="b" onkeyup="LoginSetFocus(event,'a')" />
    <input name="c" type="text" id="c" onkeyup="LoginSetFocus(event,'b')" />
    <a href='xx'>xx</a>我把你的那些注释掉了,而且用的是onkeyup,但没有发现你说的情况,至少IE6.0和FF3.0我测试了没发现
      

  9.   

    <script type="text/javascript"> 
        function LoginSetFocus(event,obj) 
        { 
            
            if(event.keyCode==13||event.keyCode==9) 
            { 
                alert(event.keyCode); 
                document.getElementById(obj).focus();                                                      } 
        } 
    </script> 
    <input name="a" type="text" id="a" onkeyup="LoginSetFocus(event,'c')" />
    <input name="b" type="text" id="b" onkeyup="LoginSetFocus(event,'a')" />
    <input name="c" type="text" id="c" onkeyup="LoginSetFocus(event,'b')" />你用这段代码在ie6,ff2中测试时,你在第一个文本框id="a"中按tab键时我这里显示的是b获取焦点后然后又返回a,相当于先执行了tab,b获取焦点,然后b触发onkeyup,返回了a
      

  10.   


    呵呵,按你这么说,你有没有发现
    <script type="text/javascript"> 
    function SetFocus(e,obj) { 
     e=e||event;
     if(e.keyCode==13||e.keyCode==9){
    //要阻止默认的行为,要不tab照样执行默认的行为
      if(e.preventDefault)e.preventDefault();//ff
      else e.keyCode=0;//ie
      document.getElementById(obj).focus();
     } 

    </script> 
    <!-----时间使用keydown,使用keyup时,当使用tab切换时会使指定的id获取不到焦点,而且也不能阻止默认的行为---->
    <input name="a" type="text" id="a" onkeydown="SetFocus(event,'c')" />
    <input name="b" type="text" id="b" onkeydown="SetFocus(event,'a')" />
    <input name="c" type="text" id="c" onkeydown="SetFocus(event,'b')" />
    <a href='xx'>xx</a>
    你这个按一下tab,他会返回地址栏的地址,然后再按一次tab才返回到指定的焦点,也就是说要按2次tab才可以,而不是直接到指定的焦点
      

  11.   

    我写的那个虽然他会出现如你说的情况,但不需要按2次tab
      

  12.   

    汗。我一般用遨游,没开ie测试,还跑到地址栏了。修改了下,没跑地址栏了:-)<script type="text/javascript"> 
    function SetFocus(e,obj) { 
     e=e||event;
     if(e.keyCode==13||e.keyCode==9){
    //要阻止默认的行为,要不tab照样执行默认的行为
      if(e.preventDefault)e.preventDefault();//ff
      else {e.keyCode=0;e.returnValue=false;}//ie
      document.getElementById(obj).focus();
     } 

    </script> 
    <!-----时间使用keydown,使用keyup时,当使用tab切换时会使指定的id获取不到焦点,而且也不能阻止默认的行为---->
    <input name="a" type="text" id="a" onkeydown="SetFocus(event,'c')" />
    <input name="b" type="text" id="b" onkeydown="SetFocus(event,'a')" />
    <input name="c" type="text" id="c" onkeydown="SetFocus(event,'b')" />
    <a href='xx'>xx</a>
      

  13.   


    这个还可以,过滤掉returnValue这个差不多,不过 e=e||event;你这个就有点多余了
      

  14.   

    最好用onkeypress ,,,,,,,
      

  15.   

    <input name="a" type="text" id="a" onkeypress="SetFocus(event,'c')" />
    <input name="b" type="text" id="b" onkeypress="SetFocus(event,'a')" />
    <input name="c" type="text" id="c" onkeypress="SetFocus(event,'b')" />
    试一下
      

  16.   

    你从onkeydown="SetFocus(event,'c')" />这里传递过去的时候就已经是做了判断了,不需要再有,除非你这里没有
      

  17.   

    <script type="text/javascript"> 
    document.attachEvent("onkeydown",keywork);
        function keywork() 
        { 
            if(event.keyCode==13||event.keyCode==9) 
            { 
                alert(event.keyCode); 
                event.srcElement.focus();                                                      } 
        } 
    </script>
      

  18.   

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
    "http://www.w3.org/TR/html4/loose.dtd"> 
    <html> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
    <title>无标题文档 </title> 
    <script type="text/javascript"> 
    document.attachEvent("onkeydown",keywork);
        function keywork() 
        { 
            if(event.keyCode==13||event.keyCode==9) 
            { 
                alert(event.keyCode); 
                event.srcElement.focus();                                                      } 
        } 
    </script> 
    </head> <body>
     
    <input name="a" type="text" id="a"  />
    <input name="b" type="text" id="b"  />
    <input name="c" type="text" id="c"  />
    </body> 
    </html>
      

  19.   

    你没理解我的意思,我是说如果你要使用这个变量很多次,你是写event的代码少点还是直接使用e的代码少点
      

  20.   

    script type="text/javascript"> 
        function LoginSetFocus(obj) 
        { 
            
            if(event.keyCode==13||event.keyCode==9) 
            { 
                alert(event.keyCode); 
                document.getElementById(obj).focus();                                                      } 
        } 
    </script> 
    <input name="a" type="text" id="a" onkeyup="LoginSetFocus('c')" /> 
    <input name="b" type="text" id="b" onkeyup="LoginSetFocus('a')" /> 
    <input name="c" type="text" id="c" onkeyup="LoginSetFocus('b')" /> 测试可是有效的啊
      

  21.   

    你还是没理解我的意思我说是e变量名称比evnet变量名称少4个字符如果你要使用这个变量名称10次,那么就总共有50个字符,而我只有10个字符,少了40个字符,还没理解???????