<input onkeydown="if(event.keyCode==13)event.keyCode=9">

解决方案 »

  1.   

    我是这么做的
    function onEnter(fieldObject){
    e=document.form1.elements;
    if (window.event.keyCode==13){
               for (i=0;i<e.length;i++){
       if (e[i].name==fieldObject.name){
          for (j=i+1;j<e.length;j++)
            if (e[i].type!='hidden' && e[j].disabled!=true){
     e[j].focus(); break; }
          }
    }
    }//if
    }
      

  2.   

    我今年年前写给同事的。/*
    键盘控制表单焦点程序 设计:张麒
    日期:2003年1月22日
    版本:0.9
    */
    F_s="form4.f"; //表单名称
    F_n=4; //表单的数量。
    function keyfun(z){
    switch (window.event.keyCode) {
    case 13 :{
    if (z<F_n){
    fn = eval(F_s + (z+1));
    fn.focus();
    if (z==F_n){ //如果是最后一个INPUT 则提交表单。
    form4.submit();
    }
    // if (z==1){ //设置在第n个INPUT提交,校验程序也可添加于此。
    // form1.submit();
    // }
    break;
    }
    case 27 :{
    if (z>1){
    fn = eval(F_s + (z-1));
    fn.focus();
    window.event.keyCode=0;
    }
    break
    }
    }
    }
    </script>用法举例:<input type=text name=xxx onkeydown=keyfun(1);>
    <input type=text name=xxx onkeydown=keyfun(2);>
    <input type=text name=xxx onkeydown=keyfun(3);>
    <input type=text name=xxx onkeydown=keyfun(4);>其中1、2、3、4为获得焦点顺序,这样既可实现用回车和ESC切换焦点(回车"向下",ESC"向上")
      

  3.   

    忘告诉你了,用我上面那个程序有个缺点,表单的名字必须有规律,必须是xx1,xx2,xx3....的形式。你能看明白就行了。