
tengo este codigo que cambia de inputs y/o selects una ves alcanzado el maxlength de un input o el cambio de una opcion del select, y funciona correctamente
f
Código PHP:
unction NextInput(el){
var f = el.form;
var els = f.elements;
var x, nextEl;
if(el.type=="text")
{if (el.value.length < el.getAttribute('maxlength')) return;
for (var i=0, len=els.length; i<len; i++)
{x = els[i];
if (el == x && (nextEl = els[i+1]))
{if (nextEl.focus) nextEl.focus();}}}
else{if(el.type=="select-one")
{for (var i=0, len=els.length; i<len; i++)
{x = els[i];
if (el == x && (nextEl = els[i+1]))
{if (nextEl.focus) nextEl.focus();}}}}
}
Código PHP:
<input type="text" name="txt1" id="txt1" value="" maxlength="35" onkeyup="NextInput(this)" />
<input type="text" name="txt2" id="txt2" value="" maxlength="35" onkeyup="NextInput(this)" />
cabe mencionar que utilizo el metodo de teclas SHIFT + TAB, para regresarme al input anterior
existe alguna posibilidad de modificar este codigo para que al regresarme me dejara el cursor al final o al principio del contenido...

NOTA:
onkeyup <-- realiza el proceso perfectamete, solo que al recibir el foco, automaticamente me regresa al input siguiente
onleydown <-- el proceso al regresar selecciona todo el contenido, pero al presionar BACKSPACE, se cambia al otro input
onkypress <-- debo repetir las teclas por que al evaluar el press, se pierde un caracter