Jeg har bemærket, at du har "window.location.reload(true);" i din kode. Hvorfor? Det ser ud til, at det ville få tingene til ikke at fungere.
Du bør prøve at analysere dit program for at finde ud af, hvor problemet opstår. Så vil du være i stand til at stille os et meget specifikt spørgsmål som "hvorfor udløser Firefox ikke onClick-handleren, når jeg klikker på dette link" i stedet for blot at poste tre sider med kode. Når du indsætter så meget kode, er det ret svært for os at finde din fejl.
Så her er de spørgsmål, du bør stille:
-
Bliver min HTML parset korrekt? For mig ser det ud til, at det måske ikke er parset korrekt, fordi du ikke har sat anførselstegn omkring værdien af onClick. Du bør bruge anførselstegn, som:onClick="..." For at finde ud af, om din HTML bliver parset pænt, kan du bruge Firefox's View->Source-funktion og se på de farver, den udskriver.
-
Bliver min onClick-handler ringet op? Det ser ud til, at du bruger alert()'er effektivt, så det er godt.
-
Bliver anmodningen rent faktisk sendt til min server? For at bestemme dette skal du bruge Firefox og installere Firebug udvidelse. I "Net"-panelet vil det vise dig alle de AJAX-anmodninger, der foretages af din side, og det vil vise dig resultaterne, der blev returneret fra serveren.
-
Gør scriptet på min server det rigtige? Så på serversiden kan du nu tilføje linjer som "ekko 'hello world';" og du vil se det output i Firebug Net-panelet, som vil hjælpe dig med at fejlsøge adfærden for dit serverside-script.
-
Bliver min tilstandChanged-funktion kaldt? Endnu en gang, brug alert()-sætninger, eller skriv til Firebugs debug-konsol .
Når du har indsnævret dit problem, kan du prøve at reducere din kode til den simpelste kode, der stadig fejler. Så vis os koden, og fortæl os præcis, hvad symptomerne på fejlen er.
Til gengæld anbefaler jeg at få denne bog:Javascript:The Deitive Guide, 5th Edition af O'Reilly . Det dækker mange fede ting som AJAX og lukninger. Det koster 50 USD, men det er bestemt en god investering, fordi det forklarer tingene på en meget mere sammenhængende måde, end du nogensinde får fra gratis websteder.