[Javascript] Meerdere dynamic listboxen vullen

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Calvin&Hobbes
  • Registratie: December 2001
  • Laatst online: 11-01-2024
Ik heb een dropdownlist die zeg maar 2 andere dropdown lists automatisch moet invullen afhankelijk van de keuze. Echter de manier die ik nu heb (zie code) is nogal omslachtig omdat de 2 andere dropdown lists eigenlijk precies hetzelfde lijstje bevatten. Weet iemand hoe dit schoner kan?

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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<form action="/update" method="post">
#1e dropdownlist
Team 1 <select name="team1" OnChange="setOption(this.form, this.selectedIndex)">
<option value="choice"> Choose Team </option>
<option value="TeamA">TeamA</option>
<option value="TeamB">TeamB</option>
<option value="TeamC">TeamC</option>
</select><br>

#2e dropdownlist
Player 1<select name="player1" OnChange="this.form.ValueIn2.value=this.options[this.selectedIndex].value">
<option>
<option>
etc. 
</select>
#3e dropdownlist
Player 2<select name="player2" OnChange="this.form.ValueIn2.value=this.options[this.selectedIndex].value">
<option>
<option>
etc.
</select>
etc..
 
<script language="javascript">
<!--
                function setOption(form, index) {
            
                for (var i = 0; i < form.player1.length; i++) {
                  form.player1.options[i].text = "";
                  form.player1.options[i].value = "";
                  form.player2.options[i].text = "";
                  form.player2.options[i].value = "";
                }

                if (index == 1) {
                  form.player1.options[0].text = "Joop";
                  form.player1.options[0].value = "Joop";
                  form.player1.options[1].text = "Theo";
                  form.player1.options[1].value = "Theo";
                  form.player1.options[2].text = 
                  etc.....

                  #zelfde personen uit het team maar dan player2
                  form.player2.options[0].text = "Joop"
                  form.player2.options[0].value = "Joop";
                  form.player2.options[1].text = "Theo";
                  form.player2.options[1].value = "Theo";
                  etc......

                form.player1.selectedIndex = 0;
                form.player2.selectedIndex = 0;
                form.ValueIn2.value = form.player1.options[form.player1.selectedIndex].value;
                form.ValueIn2.value = form.player2.options[form.player2.selectedIndex].value;


//-->
</script>

[ Voor 8% gewijzigd door Calvin&Hobbes op 12-03-2009 20:22 ]


Acties:
  • 0 Henk 'm!

  • truegrit
  • Registratie: Augustus 2004
  • Laatst online: 22-09 09:11
code:
1
var x = new Array('Joop', 'Theo', ..);


en dan hieroverheen gaan met een loopje

hallo


Acties:
  • 0 Henk 'm!

  • Calvin&Hobbes
  • Registratie: December 2001
  • Laatst online: 11-01-2024
truegrit schreef op donderdag 12 maart 2009 @ 20:25:
code:
1
var x = new Array('Joop', 'Theo', ..);


en dan hieroverheen gaan met een loopje
dank je wel, zo dan?

code:
1
2
3
4
5
6
7
8
var x = new Array('Joop', 'Theo', ..);

  for (var i = 0; i < x.length; i++) {
                  form.player1.options[i].text = x[i];
                  form.player1.options[i].value =x[i] "";
                  form.player2.options[i].text = x[i];
                  form.player2.options[i].value =x[i];
                }