Comunidad de diseño web y desarrollo en internet online

Cuestionario/Test

Citar            
MensajeEscrito el 20 Dic 2010 12:16 pm
Buenos días,

Llevo ya varios días intentando hacer un test para un proyecto.

La idea es hacer un test con 10 preguntas, el cual al terminar solo muestre cuantos aciertos se a tenido. Ademas de un botón para volverlo hacer, esta segunda vez se hace el test y muestra que contestaciones a tenido y se detalla como tendría que estar bien. Una vez hecho que el usuario no pueda hacer el test otra vez.
Si carga el documento vuelva a cargar el detalle con los resultados, no puedo usar php ya que la asignatura es de javascript, pero puedo meter jquery tambien.

Esto es lo que he hecho hasta ahora:

Código HTML :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<title>Esto es una prueba</title>

<script type="text/javascript">

var ans = new Array;
var done = new Array;
var score = 0;
ans[1] = 'a';
ans[2] = 'a';
ans[3] = 'c';
ans[4] = 'a';
ans[5] = 'a';
ans[6] = 'a';
ans[7] = 'a';
ans[8] = 'a';
ans[9] = 'b';
ans[10] = 'a';
function Engine(question, answer) {
if (answer != ans[question]) {if (!done[question]) {
done[question] = -1;
var mal='<span class="mal' + '">Incorrecto&nbsp;' + score + '&nbsp;puntos acumulados</span>'
document.getElementById('resp' + (question)).innerHTML = mal;
}
else {
alert("Ya has contestado a esta pregunta!");
   }
}
else {
if (!done[question]) {
done[question] = -1;
score++;
var bien='<span class="bien' + '">Correcto&nbsp;' + score + '&nbsp;puntos acumulados</span>'
document.getElementById('resp' + (question)).innerHTML = bien;
}
else {
alert("Ya has contestado a esta pregunta!");
      }
   }
}
function notaFinal() {
document.getElementById('puntuacionfinal').innerHTML = '<span class="notas">Puntuaci&oacute;n:&nbsp;' + score + '</span>';   if (score> 9) {document.getElementById('notafinal').innerHTML = '<span class="notas">Calificaci&oacute;n:&nbsp;Matr&iacute;cula de Honor</span>';}
   else if (score > 8) {document.getElementById('notafinal').innerHTML = '<span class="notas">Calificaci&oacute;n:&nbsp;Sobresaliente</span>';}
   else if (score > 7) {document.getElementById('notafinal').innerHTML = '<span class="notas">Calificaci&oacute;n:&nbsp;Notable alto</span>';}
   else if (score > 6) {document.getElementById('notafinal').innerHTML = '<span class="notas">Calificaci&oacute;n:&nbsp;Notable bajo</span>';}
   else if (score > 5) {document.getElementById('notafinal').innerHTML = '<span class="notas">Calificaci&oacute;n:&nbsp;Bien</span>';}
   else if (score > 4) {document.getElementById('notafinal').innerHTML = '<span class="notas">Calificaci&oacute;n:&nbsp;Suficiente</span>';}
   else {document.getElementById('notafinal').innerHTML = '<span class="notas">Calificaci&oacute;n:&nbsp;Insuficiente</span>';}
}
// End -->
</script>
<body>
<div id="contenedor">
<form name="test" action="">
<h1>Esto es una prueba</h1>
<p>Contesta a las siguientes preguntas marcando la respuesta correcta:</p>
<div class="numero">1</div>
<div class="pregunta">
<p>Te gusta sacar fotos?</p>
<div id="resp1">&nbsp;</div>
<ol>
<li><input type=radio value="a" onclick="Engine(1, this.value)" />Si</li>
<li><input type=radio value="b" onclick="Engine(1, this.value)" />No</li>
<li><input type=radio value="c" onclick="Engine(1, this.value)" />Alguna vez</li>
<li><input type=radio value="d" onclick="Engine(1, this.value)" /></li>
</ol>
</div>
<div class="numero">2</div>
<div class="pregunta">
<p>Te gusta tu ciudad?</p>
<div id="resp2">&nbsp;</div>
<ol>
<li><input type=radio value="a" onclick="Engine(2, this.value)" />Si</li>
<li><input type=radio value="b" onclick="Engine(2, this.value)" />No</li>
<li><input type=radio value="c" onclick="Engine(2, this.value)" /></li>
<li><input type=radio value="d" onclick="Engine(2, this.value)" /></li>
</ol>
</div>
<div class="numero">3</div>
<div class="pregunta">
<p>Esta en la costa?</p>
<div id="resp3">&nbsp;</div>
<ol>
<li><input type=radio value="a" onclick="Engine(3, this.value)" />Si</li>
<li><input type=radio value="b" onclick="Engine(3, this.value)" />No </li>
<li><input type=radio value="c" onclick="Engine(3, this.value)" />Depende</li>
<li><input type=radio value="d" onclick="Engine(3, this.value)" /></li>
</ol>
</div>
<div class="numero">4</div>
<div class="pregunta">
<p>Numero de coches?</p>
<div id="resp4">&nbsp;</div>
<ol>
<li><input type=radio value="a" onclick="Engine(4, this.value)" />1</li>
<li><input type=radio value="b" onclick="Engine(4, this.value)" />3</li>
<li><input type=radio value="c" onclick="Engine(4, this.value)" />10</li>
<li><input type=radio value="d" onclick="Engine(4, this.value)" />15</li>
</ol>
</div>
<div class="numero">5</div>
<div class="pregunta">
<p>Tienes internet en casa?</p>
<div id="resp5">&nbsp;</div>
<ol>
<li><input type=radio value="a" onclick="Engine(5, this.value)" />Si</li>
<li><input type=radio value="b" onclick="Engine(5, this.value)" />No </li>
<li><input type=radio value="c" onclick="Engine(5, this.value)" />Tuve</li>
<li><input type=radio value="d" onclick="Engine(5, this.value)" /></li>
</ol>
</div>
<div class="numero">6</div>
<div class="pregunta">
<div id="vulcano"></div>
<p>Tienes una moto?</p>
<div id="resp6">&nbsp;</div>
<ol>
<li><input type=radio value="a" onclick="Engine(6, this.value)" />Si</li>
<li><input type=radio value="b" onclick="Engine(6, this.value)" />No</li>
<li><input type=radio value="c" onclick="Engine(6, this.value)" />Tuve</li>
<li><input type=radio value="d" onclick="Engine(6, this.value)" /></li>
</ol>
</div>
<div class="numero">7</div>
<div class="pregunta">
<p>Te gusta internet?</p>
<div id="resp7">&nbsp;</div>
<ol>
<li><input type=radio value="a" onclick="Engine(7, this.value)" />No</li>
<li><input type=radio value="b" onclick="Engine(7, this.value)" />Si</li>
<li><input type=radio value="c" onclick="Engine(7, this.value)" />A veces</li>
<li><input type=radio value="d" onclick="Engine(7, this.value)" /></li>
</ol>
</div>
<div class="numero">8</div>
<div class="pregunta">
<p>Vistes camisetas?</p>
<div id="resp8">&nbsp;</div>
<ol>
<li><input type=radio value="a" onclick="Engine(8, this.value)" />Si</li>
<li><input type=radio value="b" onclick="Engine(8, this.value)" />No</li>
<li><input type=radio value="c" onclick="Engine(8, this.value)" />A veces</li>
<li><input type=radio value="d" onclick="Engine(8, this.value)" /></li>
</ol>
</div>
<div class="numero">9</div>
<div class="pregunta">
<p>Te gusta este test?</p>
<div id="resp9">&nbsp;</div>
<ol>
<li><input type=radio value="a" onclick="Engine(9, this.value)" />Si</li>
<li><input type=radio value="b" onclick="Engine(9, this.value)" />No</li>
<li><input type=radio value="c" onclick="Engine(9, this.value)" />A veces</li>
<li><input type=radio value="d" onclick="Engine(9, this.value)" /></li>
</ol>
</div>
<div class="numero">10</div>
<div class="pregunta">
<p>Esta genial el test?</p>
<div id="resp10">&nbsp;</div>
<ol>
<li><input type=radio value="a" onclick="Engine(10, this.value)" />Si</li>
<li><input type=radio value="b" onclick="Engine(10, this.value)" />No </li>
<li><input type=radio value="c" onclick="Engine(10, this.value)" />A veces</li>
<li><input type=radio value="d" onclick="Engine(10, this.value)" /></li>
</ol>
</div>
<div id="borrarimprimir">
<input type="button" value="Calificaci&oacute;n final" onclick="notaFinal()" />
<div id="puntuacionfinal">&nbsp;</div><div id="notafinal">&nbsp;</div>
<br />
<input type="button" value="Imprimir" onclick="window.print()" accesskey="p" title="Pulsa este bot&oacute;n para imprimir la p&aacute;gina. <p>" />
<br />
<input type="button" value="Int&eacute;ntalo de nuevo" onclick="location.reload()" />
<input type="reset" value="Borrar todo" onclick="location.reload()" />
</div>
</form>
</div>
</body>
</html>


Alguien me puede ayudar.
Muchísimas gracias

Por Meija

18 de clabLevel



 

chrome
Citar            
MensajeEscrito el 21 Dic 2010 07:36 am
Nadie me podría explicar como poder guardar unas cookis de haber completado una vez el formulario1.html y que salte este a otro formulario2.html y este salte a un 3 html con los resultados del 2 formulario y gracias a las cookis si el usuario carga la encuesta vaya directamente al 3 html con el resultado??


Por favor!

Por Meija

18 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.