webForumDet fria alternativet

Checkboxar onclick och summering?

JavaScript

9 svar · 692 visningar · startad av Alamartimo

Medlem sedan okt. 2004129 inlägg
Frågan#1

Hejsan!

Har 4 checkboxar som användaren kan klicka i.

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.

<input type="checkbox" name="rchassi" onClick="" value="<%= intCostChassi %>">

Jag gör det här med ASP och MySQL..

Tacksam för hjälp :)

Medlem sedan aug. 20039 340 inlägg
#2

onclick stavas med små bokstäver (gemener) men det bör fungera ändå. Du vill alltså ha en rutin för att summera innehållet i formuläret?

Medlem sedan okt. 2004129 inlägg
#3

nitro2k01

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.

Jag kanske var lite otydlig :)

Medlem sedan aug. 20039 340 inlägg
#4

Och det måste alltså ske direkt när kryssrutan kryssas för, och inte när man klickar på en speciell knapp?

Medlem sedan jan. 2003296 inlägg
#5

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>
Medlem sedan okt. 2004129 inlägg
#6

nitro2k01:

Japp när man kryssar i rutan.

jawbreaker:

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.

Medlem sedan okt. 2004129 inlägg
#7

jawbreaker:

Jag får ett felmeddelande på din kod:

Rad 78
Fel: 'document.getElementById(...)' är null eller inte ett objekt

Jag kollar vidare här så länge
:)

Medlem sedan jan. 2003296 inlägg
#8

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:

<div id="totalSum"></div>

Du saknar förmodligen den i din HTML-kod..?

Medlem sedan okt. 2004129 inlägg
#9

Äsch då :)

Hade fel i starten av scriptet :r

<script type="text/javascript">

Tack för hjälpen jawbreaker Funkade utmärkt ju :e

Medlem sedan dec. 1999653 inlägg
#10

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
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)