[JS] Radio`s in een formulier optellen en aftrekken

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • BaseBoyNL
  • Registratie: December 2006
  • Laatst online: 17-09 00:58
Hey tweakers,

Ik ben bezig om een bestel formulier te maken.
Nu moeten er een aantal opties moeten worden gekozen.
Aan de hand van deze optie word een bedrag er bij op getelt nu is het zo dat die wel op telt maar hij haalt het er niet meer af als je een anderen optie kiest.

Ik heb op het internet het volgende gevonden:
object.checked

Maar hoe ga ik deze hier in verwerken?

Kan iemand mij verder op weg helpen ?

Ik heb de volgende code al:
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
var totaal = 0;
function optellen($field, $waarde){
    $totaal = parseFloat(document.getElementById('startwaarde').value);
    if ($field.checked){
        $totaal += $waarde;
    } else {
        $totaal -= $waarde;
    }
    document.getElementById('startwaarde').value = $totaal;
    document.getElementById('veld').innerHTML = $totaal ;
}


HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<form action="" method="get">
<input name="startwaarde" id="startwaarde" type="hidden" value="90" />
<input name="asd" type="checkbox" value="0" onchange="optellen(this, 100)" />
<input name="asasd" type="checkbox" value="0" onchange="optellen(this, 100)" />
<input name="asaad" type="checkbox" value="0" onchange="optellen(this, 300)" />
<input name="affsd" type="checkbox" value="0" onchange="optellen(this, 100)" />
<input name="aggsd" type="checkbox" value="0" onchange="optellen(this, 100)" />

<input id="test" name="test" type="radio" value="123" onchange="optellen(this, 100)" />
<input id="test" name="test" type="radio" value="44" onchange="optellen(this, 110)" />
<input id="test" name="test" type="radio" value="24" onchange="optellen(this, 120)" />
<input id="test" name="test" type="radio" value="667" onchange="optellen(this, 130)" />
<input id="test" name="test" type="radio" value="55" onchange="optellen(this, 140)" />

</form>

<div id='veld'></div>

[ Voor 0% gewijzigd door een moderator op 10-07-2009 19:57 . Reden: code blokken ]


Acties:
  • 0 Henk 'm!

  • Suaver
  • Registratie: Januari 2004
  • Laatst online: 07-08 12:14

Suaver

jokecoat

Waarom gebruik je geen jQuery, kan je direct alle elementen selecten. Prima te doen, handig en snel.

http://docs.jquery.com/Selectors/checked

You, me, us, together, me, us, you, we, us, you, me... DONE.


Acties:
  • 0 Henk 'm!

  • BaseBoyNL
  • Registratie: December 2006
  • Laatst online: 17-09 00:58
De link is voor checkboxen maar deze werken wel.

Enkel de radio objects werken niet.

Acties:
  • 0 Henk 'm!

  • André
  • Registratie: Maart 2002
  • Laatst online: 12-09 14:32

André

Analytics dude

In de onchange doe jij standaard een aanroep naar optellen, maar eigenlijk moet je na een change eerst controleren of iets uit of aan gaat. En op basis daarvan kun je zaken optellen of aftrekken. Verwerk dat eerst maar eens in je code ;)

[ Voor 9% gewijzigd door André op 10-07-2009 20:00 ]