Je charge un élément via ajax, jusque là tout va bien, et ensuite je dois initialiser ce composant (placement, valeures de départ), mais comme Ajax n'éxecute pas les fonctions Javascript lors de la réception des données, je me suis dis que j'allais passer par un contructeur, et là ! patatra, pour un élément ça passe, mais pour deux, je n'accède qu'à un constructeur.
Voici le code :
ajax.innerHTML = xhr.responseText;
constructeur(nom);
voilà, donc dans chaques JS, j'avais mis une fonxtion constructeur avec en paramètre le nom du contrôle pour ne travailler que si c'était le bon, mais il ne prend que la première fonction qu'il trouve, et je ne veux pas mettre de nom en dur, et il n'y a pas de vraie notion de classe avec constructeur. Donc :
est il possible d'utiliser une variable ?
est il possible d'indiquer le fichier JS sur lequel on veux travailler toujours avec une variable , un truc du genre variable::constructeur(); ?
Merci beaucoup et d'avance surtout.
A voir également:
Chargement d'un constructeur à partir d'une variable
>>mais comme Ajax n'éxecute pas les fonctions Javascript
>>lors de la réception des données
petit "hiatus" là,
javascript, avec xmlthhprequest ( ajax pour les intimes )
fait appel à un script sur le serveur ( php par exemple )
qui fait ce qu'il a à faire et renvoie une réponse dans
une variable JavaScript.
dire qu'ajax n'exécute pas les fonctions
javascript, ne prend pas ça mal, ça ne veut rien dire.
Je me suis certainement mal expliqué , le XMLHTTPRequest (qui n'est qu'une partie de l'Ajax en fait), affiche bien le résultat de la page chargée, jusque là tout va bien, mais dans cette page se trouvent des fonctions javascript d'initialisation qui ne sont pas lancées, voilà, ça je pense que ça parle plus.
J'ai finalement trouvé une solution, j'ai une page PHP que j'appelle via une deuxième requète XML..., sur cette page j'ai collé mes fonctions javascript d'initialisation et je fais un eval du résultat, ça fonctionne nickel, mais je ne sais pas si c'est la meilleure façon.