Hallo tweakers,
Ik heb nu HTML-CSS-PHP wel een beetje onder de knie, maar wil toch wat doen met DHTML. Dus ik heb als oefenprojectje een boekenlijst voor mijn afdeling op school gekozen.
De bedoeling is dat bij het kiezen van een bepaald profiel:
1) bepaalde keuzes van vrije vakken niet meer kunnen (want dat is IRL gewoon zo)
2) er automatisch een profieldeel (de boeken daarvan) komt te staan op de pagina
en bij keuzes van de vrije-deel vakken er:
1) na 2 vakken geen keuzes meer hebt
2) de boeken van de vakken automatisch in het andere deel komen
Nu is mijn vraag hoe ik het beste content dynamisch kan invoegen en verwijderen. Nu doe ik het met "style.display="none" en dan een hoop GetElementById, maar ik heb het gevoel dat het makkelijker/netter kan.
Ik zat zelf te denken aan een aantal array's en een paar loopjes, maar dan weet ik dus niet hoe ik de inhoud van de arrays kan laten zien of verwijderen van de pagina:
een live-voorbeeld is Hier te vinden, daar staat de volgende JS:
Ik heb nu HTML-CSS-PHP wel een beetje onder de knie, maar wil toch wat doen met DHTML. Dus ik heb als oefenprojectje een boekenlijst voor mijn afdeling op school gekozen.
De bedoeling is dat bij het kiezen van een bepaald profiel:
1) bepaalde keuzes van vrije vakken niet meer kunnen (want dat is IRL gewoon zo)
2) er automatisch een profieldeel (de boeken daarvan) komt te staan op de pagina
en bij keuzes van de vrije-deel vakken er:
1) na 2 vakken geen keuzes meer hebt
2) de boeken van de vakken automatisch in het andere deel komen
Nu is mijn vraag hoe ik het beste content dynamisch kan invoegen en verwijderen. Nu doe ik het met "style.display="none" en dan een hoop GetElementById, maar ik heb het gevoel dat het makkelijker/netter kan.
Ik zat zelf te denken aan een aantal array's en een paar loopjes, maar dan weet ik dus niet hoe ik de inhoud van de arrays kan laten zien of verwijderen van de pagina:
een live-voorbeeld is Hier te vinden, daar staat de volgende JS:
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
| function check() { var NT = document.getElementById("NT"); var NG = document.getElementById("NG"); var EM = document.getElementById("EM"); var CM = document.getElementById("CM"); var i = 0 for (i=0;i<document.forms[0].profiel.length;i++) { if (document.forms[0].profiel[i].checked) { gekozen_profiel = document.forms[0].profiel[i].value } } NT.style.display="none" NG.style.display="none" EM.style.display="none" CM.style.display="none" document.getElementById(gekozen_profiel).style.display="block" switch(gekozen_profiel) { case "NT": document.forms[0].filo.disabled=true; document.forms[0].filo.checked=false; break case "NG": document.forms[0].filo.disabled=true; document.forms[0].filo.checked=false; break case "EM": document.forms[0].filo.disabled=false; break case "CM": document.forms[0].filo.disabled=false; break } } |
[ Voor 38% gewijzigd door Technicality op 25-06-2006 18:11 ]