Bonjour,
Je d�veloppe un petit moteur de recherche acceptant la saisie semi automatique (autocompl�tion) et je suis tomb� sur une chose qui me chatouille l'esprit...Peut etre pourrez vous l'�claircir...

Alors voici la ligne qui me choque :

Code : S�lectionner tout - Visualiser dans une fen�tre � part
xhr.onreadystatechange = processStateChange;
Et voici le code associ� � processStateChange :

Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
function processStateChange(){
	// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
	if (xhr.readyState == 4) {
		// only if "OK"
		if (xhr.status == 200) {
			leselect = xhr.responseText;
			// On se sert de innerHTML pour rajouter les options a la liste
			document.getElementById('laposte').innerHTML = leselect;
		} else {
			alert("Il y a un probleme:\n" +
			xhr.statusText);
		}
	}
}
Le truc, c'est que ce dernier morceau de code est une fonction (� moins que je me trompe...)
Pourtant quand je fais "xhr.onreadystatechange = processStateChange;" il n'y a pas de parenth�ses � processStateChange, ce qui signifie dans la logique de programmation que c'est une variable...
En fait, ca marche nickel de cette facon mais � partir du moment ou je mets des parenth�ses, c'est � dire xhr.onreadystatechange = processStateChange(); mon script ne fonctionne pas sous IE et fonctionne tr�s mal sous firefox...

J'aurais voulu savoir pourquoi... Est-ce une instruction evenementielle (du genre onClick et les choses comme ca) ??

Merci d'avance,

Laurent