[JS]Functie aanroepen middels een button werkt niet.

Pagina: 1
Acties:
  • 166 views sinds 30-01-2008
  • Reageer

  • Spooksel
  • Registratie: Oktober 2000
  • Laatst online: 19:04
Ik heb de volgende code voor een pagina waarin 2 selects staan met daartussen 2 buttons. Het idee is om elementen vanuit de 2 selects naar elkaar toe te kunnen verhuizen middels deze buttons.

HTML:
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
<html>
<head>
    <title>Talen Selectie</title>
    <script type="text/javascript">
    function rechts() {
        alert('rechts');
        }
    function links() {
        alert('links');
        }
    </script>
</head>
<body>
<form name="talen" method="post" action="">
<table>
<tr>
<td>
<select name="taalkeuze" multiple size="15">
<option name="">------- Beschikbare talen! -------</option>
<?
while ($taal = mysql_fetch_array($talen)) {
    echo "<option name=\"". $taal['tid'] ."\">". $taal['toms'] ."</option> \n";
    };
?>
</select>
</td>
<td>
<input type="button" value="-->" name="rechts" OnClick="rechts();" /><br />
<input type="button" value="<--" name="links" OnClick="links();" />
</td>
<td>
<select name="taalselectie" multiple size="15">
<option name="">--------- Gekozen talen! ---------</option>
</select></td>
</table>
</form>
</body>
</html>


Het probleem is dat de OnClick niet doet wat ik wil, namelijk: het aanroepen van de functie "rechts();". De foutcode:
"Deze eigenschap of methode wordt niet ondersteund door dit object".

Dit is een code die ik hier in de search redelijk veel ben tegengekomen, maar meestal in verband met een button om forms te submitten, wat hier niet het doel is. Zit ik me hier nu al die tijd blind te staren op een domme typefout ofzo? Of pak ik dit gewoon verkeerd aan?

Bevalt mijn schrijfsel je niet? www.korrelatie.nl


  • Rhapsody
  • Registratie: Oktober 2002
  • Laatst online: 01:27

Rhapsody

In Metal We Trust

Zo werkt ie wel:
HTML:
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
<html>
<head>
    <title>Talen Selectie</title>
    <script type="text/javascript">
    function right() {
        alert('rechts');
        }

    function left()
    {
        alert('links');
    }
    </script>
</head>
<body>
<form name="talen" method="post" action="">
<table>
<tr>
<td>
<select name="taalkeuze" multiple size="15">
<option name="">------- Beschikbare talen! -------</option>
</select>
</td>
<td>
<input type="button" value="-->" name="rechts" OnClick="right();" /><br />
<input type="button" value="<--" name="links" OnClick="left();" />
</td>
<td>
<select name="taalselectie" multiple size="15">
<option name="">--------- Gekozen talen! ---------</option>
</select></td>
</table>
</form>
</body>
</html>


Omdat je je knoppen al links en rechts had genoemd werkten de functienamen niet volgens mij. Daarnaast lijkt het of links een gereserveerd woord is.

edit:
Heb je php stukje er ff uitgehaald tijdens het uittesten.

[ Voor 30% gewijzigd door Rhapsody op 30-01-2005 20:08 ]

🇪🇺 pro Europa!


  • Spooksel
  • Registratie: Oktober 2000
  • Laatst online: 19:04
OMG :D
Zo iets knulligs en ik zag het gewoon serieus niet :)... 't zal de nasleep van vannacht wel zijn! hehe... tnx!

Bevalt mijn schrijfsel je niet? www.korrelatie.nl


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:28

crisp

Devver

Pixelated

Rhapsody schreef op zondag 30 januari 2005 @ 20:07:
[...]
Omdat je je knoppen al links en rechts had genoemd werkten de functienamen niet volgens mij. Daarnaast lijkt het of links een gereserveerd woord is.
Klopt allebei. Objecten met een name- (en in IE ook met een ID) attribuut zitten net als JS functies in de global namespace, en links is inderdaad een reserved word, dus kan je beter ook niet als name-attribuut gebruiken als je nog eens iets met de document.links collection wil gaan doen ;)

Intentionally left blank