Jag har en uträkning som görs från en tabell först och checkboxarna får tal som värde.
Nu vill jag att när användaren klickar i checkboxen så ska värdena sumeras längre ner på sidan. Utan att jag skickar iväg data. Utan bara en uppdatering när checkboxen är ikryssad.
Jag har försökt med Onclick men får inte det att fungera.
Jag vill summera de checkboxar som användaren kryssar i (på samma sida så användaren ser totalsumman för det han kryssat i) innan formuläret skickas till nästa sida.
Såhär skulle man kunna summera värdet för alla ikryssade checkboxar på sidan (oavsett hur många de är). Om det finns checkboxar på sidan som inte ska vara med i beräkningen så måste koden naturligtvis modifieras lite...
function calcSum( p_form )
{
var sum = 0;
for ( var i = 0; i < p_form.elements.length; i++ )
{
if ( p_form.elements[i].type == "checkbox" && p_form.elements[i].checked )
sum += parseFloat( p_form.elements[i].value );
}
document.getElementById( "totalSum" ).innerHTML = "Summa: " + sum;
}
...
<input type="checkbox" name="rchassi" onclick="calcSum(this.form);" value="<%= intCostChassi %>"> Alternativ 1<br>
<input type="checkbox" name="dummy" onclick="calcSum(this.form);"> Alternativ 2<br>
<div id="totalSum"></div>
Ska testa din variant lite senare här. Återkommer :)
Jag har 2 separat formulär på sidan med 2 olika submit buttons.
Så det borde funka utan någon modifiering av din kod.
Hur ska du presentera summan som räknas fram? Som det är i mitt exempel så försöker koden skriva summan till en div.
Om du kollar min kod så finns följande lilla snutt:
jag är ute efter nästan samma grej, men istället för att den summerar value't på checkboxen så skulle jag vilja att den bara lägger in hur många checkboxar som är i-bockade, eller ännu hellre, hur många som återstår innan han är klar.
Jag gör nämligen en sida där kunden väljer på sida1 hur många "sektioner" denne har idag och skickar sen det värdet till sida2 där denne ska bocka i: querystring x16 = antal boxar. Då vill jag ha en räknare som räknar ner, men jag lyckas inte modda detta och få det att fungera. Hjälp tack =)
263 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e