Ik heb een probleempje met de setAttribute functie. Het gaat om het volgende stukje script:
Probleem is dat de functie "dealer(b)" het nummer van de knop, waarop geklikt wordt, nodig heeft, maar welke knop ik ook indruk, de alert geeft altijd "9" weer. Dit natuurlijk omdat "a" aan het eind van de for() op 9 staat, maar wat kan ik hier aan doen?
code:
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
| function dealer(b) { alert(b); } function placeButtons(players) { var locs = positions[players-1]; for (a = 0; a < locs.length; a++) { buttons[a] = new Object; buttons[a].no = a; buttons[a].el = document.createElement("div"); document.getElementById("table").appendChild(buttons[a].el); buttons[a].el.setAttribute("class", "playerButton"); buttons[a].el.style.left = locs[a][0]+"px"; buttons[a].el.style.top = (locs[a][1]+basetop)+"px"; b = document.createElement("input"); buttons[a].btn = buttons[a].el.appendChild(b); b.setAttribute("type", "button"); b.setAttribute("value", a+1); b.setAttribute("onclick", "dealer(a)"); b.style.height = "50px"; b.style.width = "50px"; b.style.fontSize = ".7em"; } } |
Probleem is dat de functie "dealer(b)" het nummer van de knop, waarop geklikt wordt, nodig heeft, maar welke knop ik ook indruk, de alert geeft altijd "9" weer. Dit natuurlijk omdat "a" aan het eind van de for() op 9 staat, maar wat kan ik hier aan doen?