Bueno, en este caso el usuario es el que manda y si quiere que un puto ENTER lo mande a otro campo pues así se hará, aunque no veo que tiene de malo la tecla tabulador(en mis tiempos…), pues ambas estan normalmente en los extremos del teclado… mmm… será por complacer a las mayorías en lugar de los zurdos, y si es un zurdo el único que va a usar el sistema, bah!.
El caso es que si usamos jQuery, colocamos este capturador del evento, al presionar alguna tecla:
$(document).ready(function() {
/* Aquí podría filtrar que controles necesitará manejar,
* en el caso de incluir un dropbox $('input, select');
*/
tb = $('input');
if ($.browser.mozilla) {
$(tb).keypress(enter2tab);
} else {
$(tb).keydown(enter2tab);
}
});
Esta función hace que un ENTER se comporte como un TAB, esto hará que al dar ENTER el elemento siguiente obtenga el foco.
function enter2tab(e) {
if (e.keyCode == 13) {
cb = parseInt($(this).attr('tabindex'));
if ($(':input[tabindex=\'' + (cb + 1) + '\']') != null) {
$(':input[tabindex=\'' + (cb + 1) + '\']').focus();
$(':input[tabindex=\'' + (cb + 1) + '\']').select();
e.preventDefault();
return false;
}
}
}
El código original(base de este) se encuentra aquí, sin embargo, mi versión opera utilizando la propiedad tabindex de los elementos HTML, lo cual es lo que necesitaba.

Leave a Reply