destacados

Gabriel Da Silva

Portafolio del ilustrador y director de arte brasileño, aunque afincado en Madrid, Gabriel Da Silva.

B&W Helmut Newton

Selección de fotografías en blanco y negro de uno de los fotógrafos más conocidos de las últimas décadas, Helmut Newton.

Judith Erwes

Fotógrafa afincada en Londres con un estilo que combina la moda, el humor y la estética retro.

Jody Rogac

Nacida en Inglaterra y criada en Canadá, Jody Rogac en la actualidad vive y trabaja en Brooklyn. Sus trabajo ha obtenido diversos galardones.

Publicaciones

Utilizar la tecla Intro como un tabulador en un formulario II

, 03/08/2006 08:04:17

A raíz del post Utilizar la tecla Intro como un tabulador en un formulario, en el script evitaba el envio del formulario cuando un usuario (que hay bastantes) pulsaba Intro en vez del tabulador cuando deseban pasar al siguiente campo, Esteban me mandó una interesante modificación para que el script atendiese al orden de los campos establecidos mediante la propiedad tabindex.

Ver ejemplo en funcionamiento » »

Javascript:

<script language="javascript">
 function handleEnter (field, event) {
        var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
        if (keyCode == 13) {
            var i;
            for (i = 0; i < field.form.elements.length; i++)
                if (field == field.form.elements[i])
                    break;
            i = field.form.elements[i].tabIndex + 1;
            for( j = 0 ; j < field.form.elements.length; j++){
                if( field.form.elements[j].tabIndex == i){
                    break;
                }
            }
            field.form.elements[j].focus();
            return false;
        }
        else
        return true;
    }    
</script>
HTML:
<form name="form1" method="post" action="" >
  <p>
    <label>tabindex1
    <input type="text" name="textfield" tabindex="1" onkeypress="return handleEnter(this, event)">
    </label>
  </p>
  <p>
    <label>tabindex4
    <input type="text" name="textfield2" tabindex="4" onkeypress="return handleEnter(this, event)">
    </label>
  </p>
  <p>tabindex3
    <label>
    <input type="text" name="textfield3" tabindex="3" onkeypress="return handleEnter(this, event)">
    </label>
  </p>
  <p>tabindex2
    <label>
    <input type="text" name="textfield4" tabindex="2" onkeypress="return handleEnter(this, event)">
    </label>
  </p>
</form>
Páginas: 1
comentarioscomentarios