Por fin me he decidido a registrarme después de haber consultado miles de veces vuestro foro para aprender cosas acerca del proyecto que me encuentro haciendo.
El caso es que estoy haciendo una web, con servidor local (xampp) de la mano de AJAX (sin ningún framework).
Se trata de una pagina en la cual el usuario inicia sesión y va navegando entre páginas (xmlHttpRequest) hasta que llega a la deseada. La web es un examen online, y tengo parte de profesor y parte de alumno.
Al grano:
Estoy utilizando addEventListener sobre los botones que tengo (por ejemplo: iniciar sesion, dar de alta usuario...etc) Y es que antes utilizaba onclick con boton "submit", que redirigia a una función comprobar() para que los campos de usuario y clave no estuvieran vacios. Hasta aqui todo bien.
Para la navegación entre las siguientes páginas, decidí utilizar addEventListener porque me pareció mas limpio a nivel de código, pero aquí viene mi dolor de cabeza....
FUNCIONA CUANDO LE DA LA GANA!
Hay algunas páginas que no funcionan y ya esta, y otras que si haces varias veces click, dice venga va, voy a funcionar ya que insistes!
He probado en Firefox, y en google chrome a la vez, y me pasa que si en Firefox funciona, en google chrome no, y al revés!
Decidme si no es para volverse loco!
Os pongo un trozo de código (cosa que yo creo que es correcto).
usuario, examenes y estadisticas son mis botones:
Código Javascript:
Ver original
function manejaGU(){ initReq("POST","profesorGestionaUsuarios.php",true); } function manejaGE(){ initReq("POST","profesorGestionaExamenes.php",true); } function manejaVE(){ initReq("POST","profesorVisualizaEstadisticas.php",true); } function inicia_Eventos(){ var gu=document.getElementById('usuarios'); var ge=document.getElementById('examenes'); var ve=document.getElementById('estadisticas'); gu.addEventListener('click',manejaGU,false); ge.addEventListener('click',manejaGE); ve.addEventListener('click',manejaVE); //por aqui mas funciones window.addEventListener('load', inicia_Eventos, false);/*esto lo pongo lo ultimo antes de </script>*/ }
AH! También me ha pasado que si quitaba el false de addEventListener o lo volvía a poner, también funciona cuando quiere...
Un alma caritativa que me ayude a entender
Gracias de antemano!