Que tal maestros, les cuento mi problema, estoy haciendo un pequeño ejercicio de un cuestionario en js, ya lo había terminado y funcionaba a la perfección...ahora desde que le incluí bootstrap no me funcionaba correctamente, quite bootstrap pensando que sería eso y no, sigue sin funcionar... son contadas las veces que funciona a veces a la primer vez...y el error surge en que no hace display en una función que llamo, en el debug si la hace pero al terminar la función puff...se sale y me resetea la página.
Código Javascript
:
Ver originalvar aciertos = 0;
var preguntas;
var num_qst = 0;
var seleccionadas = [];
var nombre;
var password;
var remember;
$(document).on("ready", function(){
if (localStorage.getItem("flag") == "set") {
$("#name").val(localStorage.nombre);
$("#pass").val(localStorage.pass);
}
$("#submit").on("click", function(e){
e.preventDefault();
credentialization();
});
$("#next").on("click", sig_qst);
$("#back").on("click", regresa_qst);
});
function credentialization(){
nombre = $("#name").val();
password = $("#pass").val();
if (!(nombre == "" || password == "")) {
if (localStorage.getItem("flag") != "set") {
localStorage["nombre"] = nombre;
localStorage["pass"] = password;
localStorage.setItem("flag", "set");
}else{
if (!(nombre == localStorage["nombre"] && password == localStorage["pass"])) {
alert("Credenciales no identificables...");
}else {
$.getJSON('preguntas.json', function(data){
preguntas = data.preguntas;
alert("termino de cargar preguntas");
}).done(function(){
$("#back").prop("disabled", true);
despliegue_qst(num_qst, seleccionadas);
});
//inicio();
}
}
}else{
alert("Required field...");
}
}
function sig_qst(){
if (!($("input:checked").length)){
alert("No se ha seleccionado respuesta...")
return;
}else{
if(seleccionadas[num_qst]==undefined){
var a = $("input:checked");
seleccionadas.push(a[0].value);
}else{
var a = $("input:checked");
seleccionadas[num_qst]= a[0].value;
}
}
var sgt = ++num_qst;
if(num_qst !=0){
$("#back").removeAttr('disabled');
}
if(num_qst == preguntas.length){
despliegue_total();
$("#next").prop("disabled", true);
return;
}
despliegue_qst(sgt, seleccionadas);
}
function regresa_qst(){
var ant = --num_qst;
if(num_qst == 0){
$("#back").prop("disabled", true);
}
despliegue_qst(ant, seleccionadas);
}
function despliegue_qst(numQ, selQ){
$("#cuestionario").find('fieldset').empty().hide().fadeIn('slow');
$('#central').find('h1').text(preguntas[numQ].question);
if(selQ[numQ]!=undefined){
for(var i=0; i<preguntas[numQ].choices.length; i++){
if(i == selQ[numQ]){
$("#cuestionario").find('fieldset')
.append("<input type='radio' name='qst " + numQ + "' value='"+ i + "' checked>" + preguntas[numQ].choices[i] + "<br>");
}else{
$("#cuestionario").find('fieldset')
.append("<input type='radio' name='qst " + numQ + "' value='"+ i + "'>" + preguntas[numQ].choices[i] + "<br>");
}
}
}else{
for(var i=0; i<preguntas[numQ].choices.length; i++){
$("#cuestionario").find('fieldset')
.append("<input type='radio' name='qst " + numQ + "' value='"+ i + "'>" + preguntas[numQ].choices[i] + "<br>");
}
}
}
function despliegue_total(){
$('#central').find('h1').text("Y tu número de aciertos fue...");
for(var i=0; i<preguntas.length; i++){
if(seleccionadas[i] == preguntas[i].correctAnswer){
aciertos++;
}
}
$("#cuestionario").find('fieldset').empty().append("<h1>"+ aciertos + "</h1>");
}
Código HTML:
Ver original<!DOCTYPE html>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> #central{
border: 1px solid #FDEFA1;
border-radius: 5px;
margin:auto auto;
width: 65%;
}
<form action="#" id="login"> <input name="name" id="name" placeholder="Nombre" type="text"/> <input name="email" id="email" placeholder="E-mail" type="email"/> <input name="pass" id="pass" placeholder="Password" type="password"/> <input type="submit" id="submit" value="Iniciar"/>
<form action="#" id="cuestionario"> <button id="next" value="Siguiente"/> <button id="back" value="Anterior"/>
El error surge en el botón de Siguiente a veces en el primer click...ya no muestra display...otras veces el error es en el botón de Anterior...igual hace lo mismo...y cuando debuggeo...si surge error en cualquiera de los botones me resetea la página.
Muchas gracias de antemano