Denna delen av 99 uppdateras inte längre utan har arkiverats inför framtiden som ett museum.
Här kan du läsa mer om varför.
Mac-nyheter hittar du på Macradion.com och forumet hittar du via Applebubblan.

Köra jquery-script flera gånger på samma sida?

Tråden skapades och har fått 4 svar. Det senaste inlägget skrevs .
1

Jag har en webbsida.... index.html där hämtar jag en fråga ur databsen m.h.a. ajax och php.
När jag väljer mitt svar (radio buttons) så sparar den det via ajax i databasen.
Så långt allt gott.

När den sparat triggar den en funktion (samma som ovan) att hämta ny fråga som ska visas, det funkar.
Och radio buttons blir nollställda.
Men när jag väljer mitt nya svar så händer nada. Inget.

$(document).ready(function() {
		
		$('#currentQuestion').hide();
		
		$("input:radio[name="answer"]").change(function() {
    		var value = $(this).val();
    		sendValue(value);
		});
	
		getNewQuestion();
	
	});

Koden visar där det går fel. Eller snarare del ett av denna hide() funkar .change() funkar inte men getNewQuestion() funkar.
Varför triggas inte .change en andra gång.

Jag vet att det är enkelt men jag har drabbats av akut-kodbilndhet.

Den triggas inte en andra gång för att event-handlern (den anonyma funktionen som används som argument till change()) bara kopplas till de element som finns tillgängliga när funktionen (change()) körs. (när DOM-trädet är redo)

Innan jQuery 1.7 så löser man det mha funktionen live() eller delegate() istället. Från och med jQuery 1.7 så rekommenderas funktionen on(). delegate() och on() är dom rekommenderade varianterna, då dom är mycket prestandaeffektivare, och funkar bättre med mobila enheter. Kodexempel för alla tre alternativen finns under respektive länk.

Jag gjorde det så här istället:

$(".radioanswer").on('click', function() {
    		var value = $(this).val();
	    	sendValue(value);			
		});

Men det blir ingen skillnad i resultatet.

Här finns hela min kod just nu: index.html

Och hur grym är inte du. Tack!
Jag ska titta på on() så får vi se. Visste att det var något liknande.

Nu fick jag äntligen till det. Det handlade inte om jquery överhuvudtaget eller nåja delvis.
Men mest på php:n. I de två php-dokument jag använder mig av la jag till detta på slutet:

session_unset();

Då rockade det loss.

1
Bevaka tråden