[jQuery] veel checkboxen (verschillende namen) value ophalen
Door
P Widdershoven
op 23-11-2010 13:53
gewijzigd op 23-11-2010 13:57
2.836 views
Goedemiddag,
Probleem: Veel checkboxen met verschillende 'names' en ik moet die naam weten (zodat ik via de 'name' meer velden kan opvragen)
Wat wil ik bereiken: De 'name' is een ID waaraan een prijs hangt. Wanneer meerdere checkboxen zijn aangevinkt moet jQuery van al deze aangevinkte ID's de prijzen optellen en dit aan de gebruiker laten zien (dat laatste is geen probleem uiteraard).
$(document).ready(function(){
val total = 0;
$("input:checkbox").change(function(){
$("input[type=checkbox][checked]").each(function(){
total += $(this).attr("name");
});
alert(total);
});
});
$(document).ready(function(){
$("input:checkbox").change(function(){
var total = 0;
$("input:checkbox[checked]").each(function(){
total += $("#bedrag_"+$(this).attr("name")).val();
//$(this).attr("name"));
});
alert(total);
});
});
Zo werkt het alleen zet hij mij alle bedragen achter elkaar (hij ziet ze als string dus). Bezig met googlen maar misschien dat je het antwoord weet ? :)
$(document).ready(function(){
$("input:checkbox").change(function(){
var total = 0;
$("input:checkbox[checked]").each(function(){
total += parseInt($("#bedrag_"+$(this).attr("name")).val());
//$(this).attr("name"));
});
alert(total);
});
Kan een aantal manieren verzinnen waardoor je het alsnog kan optellen, maar dat gaat mij te veel tijd kosten om het geheel uit te schrijven. Haal het bedrag op, splits het bedrag met het bedrag voor en achter de komma, tel de variabelen op, tel vervolgens het bedrag na de komma op en verwerk dat met het bedrag voor de komma. Op die manier kan het wel.
Raar dat javascript dat inderdaad niet in zich heeft... Ik ga verder stoeien! I.i.g. bedankt voor de tijd en moeite Chris!
Nee. Wij houden gewoon een rare formatting aan. Zie de reactie boven mij.
Een 'getal' als 5,50 bestaat niet als getal, alleen als string.
Wil je 5,50 als getal hebben, dan heb je een float nodig: 5.50.
Wij gebruiken hier een afwijkende notatie van wat er geïmplementeerd is.