Foros del Web » Programando para Internet » Javascript »

Test con javascript

Estas en el tema de Test con javascript en el foro de Javascript en Foros del Web. Hola a todos, He creado un test y su correción en la misma página por medio de javascript. Aquí os dejo el código: Código HTML: ...
  #1 (permalink)  
Antiguo 25/09/2010, 12:40
 
Fecha de Ingreso: mayo-2009
Mensajes: 153
Antigüedad: 15 años, 6 meses
Puntos: 1
Test con javascript

Hola a todos,

He creado un test y su correción en la misma página por medio de javascript.

Aquí os dejo el código:

Código HTML:
<html>
<head>
<title>Corrección de un test</title>
</head>


<body>

<FORM name="Preguntas">

  <p>
<!-- Primera pregunta -->
    1.- Este es el enunciado de la primera pregunta del test.  </p>

  <p>
    <input type="radio" name="pregunta1" id="p11" value="A" /> Texto de la respuesta A.  </p> <p>
    <input type="radio" name="pregunta1" id="p12" value="B" /> Texto de la respuesta B.  </p> <p>
    <input type="radio" name="pregunta1" id="p13" value="C" /> Texto de la respuesta C.  </p> <p>
    <input type="radio" name="pregunta1" id="p14" value="D" /> Texto de la respuesta D.  </p>
  <p></p>

    
<!-- Segunda pregunta -->   
    2.- Este es el enunciado de la segunda pregunta del test.  </p>

  <p>
    <input type="radio" name="pregunta2"  id="p21" value="A" /> Texto de la respuesta A.  </p> <p>
    <input type="radio" name="pregunta2"  id="p22" value="B" /> Texto de la respuesta B.  </p> <p>
    <input type="radio" name="pregunta2"  id="p23" value="C" /> Texto de la respuesta C.  </p> <p>
    <input type="radio" name="pregunta2"  id="p24" value="D" /> Texto de la respuesta D.  </p>
   <p></p>

    
<!-- Tercera pregunta -->
3.- Este es el enunciado de la tercera pregunta del test.   </p>

  <p>
    <input type="radio" name="pregunta3"  id="p31" value="A" /> Texto de la respuesta A.  </p> <p>
    <input type="radio" name="pregunta3"  id="p32" value="B" /> Texto de la respuesta B.  </p> <p>
    <input type="radio" name="pregunta3"  id="p33" value="C" /> Texto de la respuesta C.  </p> <p>
    <input type="radio" name="pregunta3"  id="p34" value="D" /> Texto de la respuesta D.  </p>
   <p></p>

  
</FORM>


<FORM name="boton">
    <input type="button"  name="boton" value=" CORREGIR " onclick="corregir()"/>
</FORM>


<br><br>

<b>RESULTADO DEL TEST</b> <P>
<form name="resultado" action="">
	
Has acertado <input type="text" size="3" name="aciertos" value=""/> preguntas <br>
Has fallado en <input type="text" size="3" name="fallos" value=""/> preguntas <br>
Has dejado de responder <input size="3" name="blancos" type="text"  value=""/> preguntas <P>
PUNTUACIÓN: <input type="text" size="5" name="puntuacion" value=""/> puntos

</form>


</body>
</html> 
No sé en que estoy fallando, pero cuando ejecuto no hay forma de que aparezca la correción del test en la parte de abajo de la página.

¿Alguien sabe donde estoy fallando?

Muchas gracias.

Última edición por foroworld; 25/09/2010 a las 12:50
  #2 (permalink)  
Antiguo 25/09/2010, 12:51
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 10 meses
Puntos: 126
Respuesta: Test con javascript

Hola

No puedes hacer referencia al form si usar getElementById
Cita:
document.resultado.getElementById('aciertos').value = aciertos;
Quita esa parte

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 25/09/2010, 13:23
 
Fecha de Ingreso: mayo-2009
Mensajes: 153
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: Test con javascript

Perdonen, al volver a editar el primer mensaje he dejado solo la parte de HTML, aquí vuelvo a pegar la página completa con el javaScript:

Código HTML:
<html>
<head>
<title>Corrección de un test</title>
<script language="JavaScript">
function corregir(){
var p1
var p2
var p3
var aciertos = 0
var fallos = 0
var blancos = 0
var nota
var notaFinal
<!-- 1º pregunta-->
if (document.getElementById('p11').checked==true) {
   p1 = 1;
   aciertos++;
}else if (document.getElementById('p12').checked==true){
      p1 = -0.5;
         fallos++;
}else if (document.getElementById('p13').checked==true){
      p1 = -0.5;
        fallos++;
}else if (document.getElementById('p14').checked==true){
      p1 = -0.5;
         fallos++;
}else{
      p1= -0.1;
      blancos++;
      }
      
<!-- 2º pregunta-->
if (document.getElementById('p21').checked==true) {
   p2 = 1;
   aciertos++;
}else if (document.getElementById('p22').checked==true){
      p2 = -0.5;
         fallos++;
}else if (document.getElementById('p23').checked==true){
      p2 = -0.5;
         fallos++;
}else if (document.getElementById('p24').checked==true){
      p2 = -0.5;
         fallos++;
}else{
      p2= -0.1;
      blancos++;
         }
      
<!-- 3º pregunta-->
if (document.getElementById('p31').checked==true) {
   p3 = 1;
   aciertos++;
}else if (document.getElementById('p32').checked==true){
      p3 = -0.5;
         fallos++;
}else if (document.getElementById('p33').checked==true){
      p3 = -0.5;
        fallos++;
}else if (document.getElementById('p34').checked==true){
      p3 = -0.5;
         fallos++;
}else{
      p3= -0.1;
      blancos++;
      }
      
nota = p1+p2+p3;
if(nota<0){
puntuacion = 0;
}else{
puntuacion = nota;
}
[COLOR="Red"]document.resultado.getElementById('aciertos').value = aciertos;
document.resultado.getElementById('fallos').value = fallos;
document.resultado.getElementById('blancos').value = blancos;
document.resultado.getElementById('puntuacion').value = puntuacion;[/COLOR]
}
</script>
</head>
<body>
<form name="preguntas">
<p><!-- Primera pregunta -->
    1.- Este es el enunciado de la primera pregunta del test.  </p>
<p>
    <input type="radio" name="pregunta1" id="p11" value="A"> Texto de la respuesta A.  </p>
<p>
    <input type="radio" name="pregunta1" id="p12" value="B"> Texto de la respuesta B.  </p>
<p>
    <input type="radio" name="pregunta1" id="p13" value="C"> Texto de la respuesta C.  </p>
<p>
    <input type="radio" name="pregunta1" id="p14" value="D"> Texto de la respuesta D.  </p>
<p> </p>
<!-- Segunda pregunta -->2.- Este es el enunciado de
la segunda pregunta del test.
<p> </p>
<p>
    <input type="radio" name="pregunta2" id="p21" value="A"> Texto de la respuesta A.  </p>
<p>
    <input type="radio" name="pregunta2" id="p22" value="B"> Texto de la respuesta B.  </p>
<p>
    <input type="radio" name="pregunta2" id="p23" value="C"> Texto de la respuesta C.  </p>
<p>
    <input type="radio" name="pregunta2" id="p24" value="D"> Texto de la respuesta D.  </p>
<p> </p>
<!-- Tercera pregunta -->3.- Este es el enunciado de
la tercera pregunta del test.
<p> </p>
<p>
    <input type="radio" name="pregunta3" id="p31" value="A"> Texto de la respuesta A.  </p>
<p>
    <input type="radio" name="pregunta3" id="p32" value="B"> Texto de la respuesta B.  </p>
<p>
    <input type="radio" name="pregunta3" id="p33" value="C"> Texto de la respuesta C.  </p>
<p>
    <input type="radio" name="pregunta3" id="p34" value="D"> Texto de la respuesta D.  </p>
<p> </p>
</form>
<form name="boton">
	<input type="button"  name="boton" value=" CORREGIR " onclick="corregir()"/> 
</form>
<br><br>
<b>RESULTADO DEL TEST</b>
<p>
<form name="resultado" action="">
    
Has acertado <input size="3" id="aciertos"> preguntas <br>
Has fallado en <input size="3" id="fallos"> preguntas <br>
Has dejado de responder <input size="3" id="blancos"> preguntas
<p>
PUNTUACIÓN: <input size="5" type="text" id="puntuacion" />  puntos
</form></p>
</body>
</html> 

Última edición por foroworld; 25/09/2010 a las 13:29
  #4 (permalink)  
Antiguo 25/09/2010, 13:31
 
Fecha de Ingreso: mayo-2009
Mensajes: 153
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: Test con javascript

Cita:
Iniciado por Adler Ver Mensaje
Hola

No puedes hacer referencia al form si usar getElementById

Quita esa parte

Suerte
no sé a que te refieres, si quito esa parte que debo poner.

Muchas gracias
  #5 (permalink)  
Antiguo 25/09/2010, 13:32
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 10 meses
Puntos: 126
Respuesta: Test con javascript

Hola
Cita:
Iniciado por foroworld Ver Mensaje
Perdonen, al volver a editar el primer mensaje he dejado solo la parte de HTML, aquí vuelvo a pegar la página completa con el javaScript:
Nada tú continua desguazando el código. Cambia esto
Cita:
document.resultado.getElementById('aciertos').value = aciertos;
por esto
Cita:
document.getElementById('aciertos').value = aciertos;
Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #6 (permalink)  
Antiguo 25/09/2010, 13:38
 
Fecha de Ingreso: mayo-2009
Mensajes: 153
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: Test con javascript



OK, muchisimasssss graciasssssss!!!!
  #7 (permalink)  
Antiguo 16/11/2015, 14:21
 
Fecha de Ingreso: noviembre-2015
Mensajes: 6
Antigüedad: 9 años
Puntos: 0
Respuesta: Test con javascript

Hola

Subo este post porque repasando ejercicios básicos de javascript me he topado con este código.

Lo ando trasteando y me ha surgido una duda. Si quisiera añadir una imagen (p.e un check verde, en caso de acierto o una cruz, en caso de fallo) ¿dónde añadiría el código? He estado haciendo pruebas con document.getelementby(id).src pero creo que voy por el mal camino ¿no?

Saludos

Etiquetas: test
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 01:15.