Código de JavaScript - Sistema de encuestas en JavaScript

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

Sistema de encuestas en JavaScriptgráfica de visualizaciones


JavaScript

Publicado el 26 de Junio del 2018 por Xavi (533 códigos)
6.722 visualizaciones desde el 26 de Junio del 2018
Este simple código es de ejemplo para ver como utilizar un array bidimensional en Javascript para simular el guardado de los resultados de una encuesta.

encuensta-javascript


NOTA; Unicamente es de ejemplo, ya que no guarda en ningún lugar los resultados de la encuesta.

Versión 1
estrellaestrellaestrellaestrellaestrella(2)

Publicado el 26 de Junio del 2018gráfica de visualizaciones de la versión: Versión 1
6.724 visualizaciones desde el 26 de Junio del 2018
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
 
	<style>
	#error {color:Red}
	#resultado {color:Grey}
	</style>
</head>
 
<body>
 
<h2>Encuesta...</h2>
 
<form>
    <div>
        Pregunta 1 <input type="radio" name="p1" value="0"> Si <input type="radio" name="p1" value="1"> No
    </div>
    <div>
        Pregunta 2 <input type="radio" name="p2" value="0"> Si <input type="radio" name="p2" value="1"> No
    </div>
    <div>
        Pregunta 3 <input type="radio" name="p3" value="0"> Si <input type="radio" name="p3" value="1"> No
    </div>
    <div>
        Pregunta 4 <input type="radio" name="p4" value="0"> Si <input type="radio" name="p4" value="1"> No
    </div>
    <div>
        Pregunta 5 <input type="radio" name="p5" value="0"> Si <input type="radio" name="p5" value="1"> No
    </div>
    <div>
        <div id="error"></div>
    </div>
    <div>
        <p><input type="submit" value="Enviar"></p>
    </div>
</form>
<div id="resultado"></div>
 
<script>
// Creamos el evento click del boton
document.querySelector("input[type=submit]").addEventListener("click",enviar);
 
// definimos el array que contendra los respuestados de la encuesta
var resultadoEncuesta=[];
 
// definimos la variable que contiene el numero de preguntas
var totalPreguntas=5;
 
// inicializamos el array de los resultados de la forma:
// resultadoEncuesta["p1"]=[0,0]
// resultadoEncuesta["p2"]=[0,0]
// ...
inicializarArrayResultados();
 
// variable que contiene el numero de encuestas realizadas
var totalEncuestas=0;
 
/**
 * Funcion que se ejecuta cada vez que se pulsa sobre el boton "enviar"
 */
function enviar(e) {
 
    // obtenemos todos los radio seleccionados
    var preguntas=document.querySelectorAll("input[type=radio]:checked");
 
    // si estan todos seleccionados...
    if(preguntas.length==totalPreguntas) {
 
        totalEncuestas++;
        document.getElementById("error").innerHTML="";
 
        // recorremos cada una de las respuestas
        preguntas.forEach(function(pregunta) {
 
            // guardamos en un array bidimensional la respuesta
            resultadoEncuesta[pregunta.name][pregunta.value]++;
 
            // desmarcamos el check
            pregunta.checked=false;
        });
        mostrarResultado();
    }else{
        document.getElementById("error").innerHTML="Selecciona todos los valores...";
    }
 
    // cancelamos el evento para que no continue
    e.preventDefault();
}
 
/**
 * Funcion para inidializar el array bidimensional
 */
function inicializarArrayResultados() {
    for(var i=1;i<=totalPreguntas;i++) {
        resultadoEncuesta["p"+i]=[0,0];
    }
}
 
/**
 * Simple funcion que muestra los resultados en cada votacion
 */
function mostrarResultado() {
    resultado="";
    resultado+="<h3>De un total de "+totalEncuestas+" encuestados...</h3>";
    for(var i=1;i<=totalPreguntas;i++) {
        resultado+="<div>pregunta "+i+" - Si: "+resultadoEncuesta["p"+i][0]+" No: "+resultadoEncuesta["p"+i][1]+"</div>";
    }
    document.getElementById("resultado").innerHTML=resultado;
}
</script>
 
</body>
</html>



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

Mayco
27 de Junio del 2018
estrellaestrellaestrellaestrellaestrella
Xavi, ante que nada muchísimas gracias por ayudarme. en cuanto a la nota en cuestión esta perfecto ya que no debo utilizar base de datos, por lo que la encuesta de las diez personas se realizan en el momento y los datos deben arrojarse al instante
NOTA; Únicamente es de ejemplo, ya que no guarda en ningún lugar los resultados de la encuesta.

El problema lo tengo que no se como informar al finalizar la encuesta los siguientes datos:

Cuantos hinchas hay de cada club.

Cuál es la zona que mas piensa la gente que que debe cambiar.

Cual es el promedio de puntaje de cada partido.

Cual es el promedio de puntaje general.

Que club tubo la mayor cantidad de encuestados y cuál la menor cantidad.

Cuantos encuestados vieron jugar a Maradona (mayores a 30 años).

los datos deben informarse al completar los 10 encuestados o sea al finalizar la encuesta.
Responder
Clay
16 de Enero del 2019
estrellaestrellaestrellaestrellaestrella
es de mucha ayuda su código, apenas estoy aprendiendo java Gracias.
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s4675