Código de JavaScript - Moverte por los elementos de un formulario con las flechas

Imágen de perfil
Val: 2.205
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Moverte por los elementos de un formulario con las flechasgráfica de visualizaciones


JavaScript

estrellaestrellaestrellaestrellaestrella(1)
Publicado el 24 de Enero del 2019 por xve
812 visualizaciones desde el 24 de Enero del 2019
Este código, muestra como moverte por los elementos de un formulario con las flecha de subir y bajar.
Si un elemento esta deshabilitado lo salta.

Versión 1.0
estrellaestrellaestrellaestrellaestrella(1)

Publicado el 24 de Enero del 2019gráfica de visualizaciones de la versión: Versión 1.0
813 visualizaciones desde el 24 de Enero del 2019
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<form action="">
 
    <div><input type="text"></div>
    <div>
        <input type="checkbox">
    </div>
    <div><input type="text"></div>
    <div><input type="text" disabled></div>
    <div><input type="text"></div>
    <div><input type="text"></div>
 
</form>
 
<script>
 
/**
 * Funcion para ir al siguiente elemento del formulario
 */
function doNext(e)
{
    var elementos=e.form.elements;
    var len=elementos.length;
    var nextE;
    var encontrado=false;
    for (var i=0; i<len; i++){
        if ((e == elementos[i] || encontrado==true) && (nextE = elementos[i+1])) {
            encontrado=true;
            if (nextE.focus && nextE.disabled==false) {
                nextE.focus();
                return;
            }
        }
    }
}
 
/**
 * Funcion para ir al anterior elemento del formulario
 */
function doPrev(e)
{
    var elementos=e.form.elements;
    var len=elementos.length;
    var nextE;
    var encontrado=false;
    for (var i=len; i>0; i--){
        if ((e == elementos[i] || encontrado==true) && (nextE = elementos[i-1])){
            encontrado=true;
            if (nextE.focus && nextE.disabled==false) {
                nextE.focus();
                return;
            }
        }
    }
}
 
var inputs=document.querySelectorAll("input");
for(input of inputs)
{
    input.addEventListener("keyup",keyPressEvent);
}
 
function keyPressEvent(e) {
    if(e.keyCode==38) { //up
        e.preventDefault();
        doPrev(this);
    }else if(e.keyCode==40) { //down
        e.preventDefault();
        doNext(this);
    }
}
</script>



Comentarios sobre la versión: Versión 1.0 (1)

Imágen de perfil
25 de Enero del 2019
estrellaestrellaestrellaestrellaestrella
No ha dejado ningún comentario
Responder

Comentar la versión: Versión 1.0

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s5031