Yo lo he hecho con jquery para recorrer una tabla con inputs. Te comento la logica:
1. Agregas un evento onkeydown al formulario.
2. Cuando captures este evento debes de discriminar las teclas que requieres (investiga el codigo numerico de ellas).
3. Tener un objeto DOM con las referencias de los campos del formulario por los que quieres navegar.
4. Dependiendo de la tecla presionada, navegas en el objeto para atras o adelante, asignandole la propiedad focus al elemento correspondiente.
Te recomiendo que utilices algun framework para hacer mas facil estos pasos.
Te pongo mi script, NOTA: la tecla con keyCode 9 es el tab
Código javascript
:
Ver original//mi codigo con jquery
$('table.dTable tbody tr td input').live('keydown', function(e){
row = $(this).parents('tr');
table = row.parents('table')
rowContent = row.find('td.label').text();
baseName = $(this).attr('name');
if(e.shiftKey == 1 && e.keyCode == 9) {
prev = $(this).parents('form').prev('input');
rowPrev = row.prev('tr.dynamicRow');
rowPrev.find('td input').focus();
return false;
}
if(e.keyCode == 9) {
row.next('tr').find('td input').focus();
}
return e.keyCode
});