Bonjour !
Je cherche à faire en sorte qu'il y ai le moins possible de Javascript dans ma page HTML.
C'est pourquoi j'ai attribué un événement à un select (qui sert pour une ComboBox) dans le fichier Javascript, et non dans le code HTML.
Sauf que après pas mal de petits tests, j'arrive à faire fonctionner mon code mais d'une manière que je ne comprend pas.
Voici mon fichier HTML :
Code:
1
2
3
4
5
6
7
8
9
10 <!-- La ComboBox --> <select id="ComboBox"> <!-- Quelques éléments de test mis dans la liste déroulante --> <option>Tagada</option> <option>Tsoin Tsoin</option> </select> <!-- Pour relier à mon fichier Javascript --> <script type="text/javascript" src="script.js"></script>
Ensuite, mon fichier Javascript :
Voilà, lorsque j'affecte la fonction à mon événement, ça ne fonctionne pas.Code:
1
2
3
4
5
6
7 //La fonction en elle-même function Bidon(){ alert('La fonction Bidon fonctionne !'); }; //Affectation de la focntion à l'évenement onChange du select de mon HTML document.getElementById("ComboBox").onChange=Bidon();
Pour cela, il faut que j'affecte la fonction ainsi :
Sans les parenthèses !Code:document.getElementById("ComboBox").onChange=Bidon;
Alors que partout ailleurs, même sur un topic de ce même forum, (Developpez.net), les affectations sont mise avec les parenthèses...
Du coup, jeune padawan que je suis, je m'y perd un peu.
Une raison pour ne pas mettre les parenthèses ? Ou justement, ai-je fait une erreur ailleurs ?
Merci d'avance de votre aide, et bon courage !
P.S: Je pense que le titre n'est pas assez explicite... Mais j'arrive pas à le modifier. (un truc comme "[Débutant]Affectation fonction sur événement, avec ou sans parenthèse" aurai été mieux)