Buenas!
Llevo días intentando crear una encuesta inteligente, las he visto en compañias de seguros como
https://www.rastreator.com/seguro-co...mparativa.aspx
Te va haciendo preguntas, marcas tu respuesta y automaticamente te carga la nueva pregunta con sus respuesta, todo sin recargar la pagina completa.
He intentado buscar algo parecido en la red pero no he encontrado nada, así que estoy intentado crearlo, pero mis conocimientos de javascript y jquery son limitados y no sé como se implementaría un sistema similar.
Me surgen dudas, he estado analizando esa misma página para ver como llamaba y recibia los datos, y veo que no utiliza json ni xml, esta es respuesta de la pagina al solicitarle una nueva pregunta.
|¿Dónde aparcas habitualmente por la noche?|1:En la calle~2:En garaje colectivo~3:En garaje individual
Cómo se aprecia tan solo separa las opciones con un tuberias | y ~ en el caso de las posibles respuestas
¿Vosotros que me aconsejáis que utilice json, xml?
He intentado empezar de la siguiente manera
index.php
Código HTML:
Ver original<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/v1.98/DTD/v1.98-strict.dtd">
<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en"><head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready(function() {
function Empezar(){
$('a.empezar_quiz').click(function() {
$('#cuestionario').load('preguntas.php?q=1'); //carga la primera pregunta
});
}
Empezar();
$("#cuestionario dl dd").click( function () {
$(this).toggleClass('activo');
var n = $('.activo').length;
$("span").text("Hay " + n + " elementos seleccionados");
});
// Una vez empieza el test el boton empezar debe desaparecer
//$('a.empezar_quiz').hide();
});
#cuestionario {
padding:10px;
margin:0px;
list-style:none;
}
#cuestionario dd {
display:block;
height:18px;
text-decoration:none;
color:#666666 !important;
padding:1px 5px 1px 5px;
border:1px solid #ffffff;
}
#cuestionario dd:hover {
border:1px solid #e53500;
text-decoration:none;
}
.activo{
background:red;
font-weight:bold;
color:#fff;
}
<a class="empezar_quiz" href="#"> Empezar con las preguntas
</a>
<!-- Carga las preguntas y respuestas -->
<!-- DEBUG: muestra las respuestas seleccionadas -->
preguntas.php
Código PHP:
Ver original<?php
if ($_GET['q']==1){?>
<dl>
<dt>Pregunta 1: <b>Selecciona 3 colores:</b></dt>
<dd>Rojo</dd>
<dd>Verde</dd>
<dd>Azul</dd>
<dd>Amarillo</dd>
<dd>Negro</dd>
<dd>Naranja</dd>
</dl>
<?php } ?>
Pero la parte de marcar las opciones no me funciona.
Y no se como hacer para irle pidiendo nuevas preguntas una vez el usuario pulse sobre la respuesta...
Dejo el ejemplo online:
http://neodani.com/fdw/jquery/quiz/
¿Podéis ayudarme?
Muchas gracias de antemano!