Hele pagina wordt gefreshed in plaats van enkel div

Status
Niet open voor verdere reacties.

jorenvos

Gebruiker
Lid geworden
10 mrt 2008
Berichten
139
Goeiemiddag iedereen, ik zit met een klein probleepje.
Momentele heb ik dit stuk code;
Code:
$(document).ready(function(){
	$(".poll-submit").click(function(){
		var id = $(this).attr("id");
	    var results_html = "Test";
 		$(".poll-"+id+":checked").each(function() {
			  $.getJSON("./include/vote.php?id="+$(this).val());
		});
		
 		$("#poll-container-"+id).fadeOut("slow",function(){
			$(this).empty();
			$("#poll-container-"+id).append(results_html).fadeIn("slow",function(){});
		});
	});
});

Als ik op de knop voor de poll te submitten klik, refresht die eerst de div van #poll-container (daar komt "Test" in de plaats), maar nadien wordt de hele pagina gerefreshed, iets wat ik niet wil. Iemand enig idee hoe dit komt? :confused:
 
Dat komt omdat de standaard actie van een submit-knop het formulier verzenden is naar de action="".

Dit kun je afvangen door e.preventDefault(); te gebruiken: http://api.jquery.com/event.preventDefault/
[js]
$(document).ready(function(){
$(".poll-submit").click(function(e){
e.preventDefault();
var id = $(this).attr("id");
var results_html = "Test";
$(".poll-"+id+":checked").each(function() {
$.getJSON("./include/vote.php?id="+$(this).val());
});

$("#poll-container-"+id).fadeOut("slow",function(){
$(this).empty();
$("#poll-container-"+id).append(results_html).fadeIn("slow",function(){});
});
});
});
[/js]
 
Bedankt, u bent mijn held van de dag :D 't zijn m'n eerste regeltjes code met jQuery, dus het is nog wat uitzoeken. Bedankt! Zal ook eens de API even doornemen!
 
Laatst bewerkt door een moderator:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan