Ik snap iets niet, waarschijnlijk onkunde van mij, maar misschien dat iemand me op het juiste pad kan wijzen.
Het gaat om een formulier welke enkel bestaat uit vragen met radiobuttons. Aan het einde wil ik een overzicht laten zien van de gemaakte keuzes, dus even alle geselecteerde radiobuttons langs en deze tonen. Vervolgens de bijhorende label opschrijven in het lijstje.
Als ik nu onderstaand script draai, vind het keurig alle radiobuttons (en dus labels) toont deze ook in de alert, maar enkel de laatste label blijft staan. Dit komt doordat hij iedere keer de <li> (lijst) item overschrijft en niet iedere keer een nieuwe <li> (lijst) toevoegt.
Als ik de documentatie van Jquery lees zou je toch zeggen dat .append iedere keer de waarde achteraan toevoegd en .html overscrhrijft het. Toch doe ik iets fout, maar wat?
Het gaat om een formulier welke enkel bestaat uit vragen met radiobuttons. Aan het einde wil ik een overzicht laten zien van de gemaakte keuzes, dus even alle geselecteerde radiobuttons langs en deze tonen. Vervolgens de bijhorende label opschrijven in het lijstje.
Als ik nu onderstaand script draai, vind het keurig alle radiobuttons (en dus labels) toont deze ook in de alert, maar enkel de laatste label blijft staan. Dit komt doordat hij iedere keer de <li> (lijst) item overschrijft en niet iedere keer een nieuwe <li> (lijst) toevoegt.
Als ik de documentatie van Jquery lees zou je toch zeggen dat .append iedere keer de waarde achteraan toevoegd en .html overscrhrijft het. Toch doe ik iets fout, maar wat?
PHP:
1
| <ul id="summary"></ul> |
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| function selectStep(i) { if (i == count - 1 ){ //tel het aantal gechecked opties var checked = $(element).find("input:radio:checked"); var count2 = checked.size(); //Iedere optie in de lijst zetten checked.each(function(i) { //this.id $("#summary").html(''); var defaultValue = $('input[name=' + this.name + ']:checked').prev().html(); $("#summary").append('<li>' + defaultValue + '</li>'); //test verschijnt keurig bij iedere optie window.alert(defaultValue); }); } } |