ENTER = TAB

One way to use enter as tab key in a form.

HTML

<form method="post" action="javascript:void 0" onsubmit="return alert('form posted')"
      onkeypress="nextOnEnter(event)">
<input type="text" name="" value=""/>
<br />
<input type="text" name="" value=""/>
<br />
<input type="text" name="" value=""/>
<br />
<input type="checkbox" value=""> box1

<input type="checkbox" value=""> box2

<br />    
<input type="text" name="" value=""/>
    <br />
<input type="submit" value=" Post ">
</form>

JavaScript

function nextOnEnter(e) {
    e = e || event;
    var obj = e.srcElement || e.target;
    nextOnEnter.fields = nextOnEnter.fields || getAllInputFields();
    if (!(obj.tagName && (obj.tagName.match(/input/i))) || obj.getAttribute('type').match(/submit/i)) {
        return true;
    }
    if (e.preventDefault){
      e.preventDefault();
    } else if (e.stopPropagation){    
      e.stopPropagation();
    } else {   
      e.returnValue = false;
    }
    if (e.keyCode === 13) {
       var tabi = parseInt(obj.getAttribute('tabindex'),10);
       if ( tabi+1 < nextOnEnter.fields.length ){
         nextOnEnter.fields[tabi+1].focus();
       }
       return false;
    }
}

function getTabbableFields(form){
    form = form || document.forms[0];
    var ret = [],
        inpts = document.getElementsByTagName('input'), 
        i = inpts.length;
    while (i--){
        var tabi = parseInt(inpts[i].getAttribute('tabindex'),10),
            txtType = inpts[i].getAttribute('type');
            ret[tabi] = inpts[i];
    }
    return ret;
}

/** if you don't want to use tabindex or want to tab through all the 
  * input fields in their given order, use this function
  */
function getAllInputFields(form){
    form = form || document.forms[0];
    var inpts = form.getElementsByTagName('input');
        ret = [],
        i = inpts.length;
    while (i--) {
        ret[i] = inpts[i];
        inpts[i].setAttribute('tabindex',i); //you'll need this
    }
    return ret;
}