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 :
xhr.onreadystatechange = processStateChange;
Et voici le code associ� � processStateChange :
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
Partager