IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques & Frameworks Discussion :

Ajax.Updater + chargement fichier JS externe dans la réponse


Sujet :

Bibliothèques & Frameworks

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 92
    Points : 57
    Points
    57
    Par défaut Ajax.Updater + chargement fichier JS externe dans la réponse
    Bonjour,

    Je ne trouve pas de réponse précise en parcourant les forums.

    Lors d'une requête Ajax.Updater avec
    si dans la page en réponse je fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <script type="text/javascript">
    	// <![CDATA[
    	alert('toto');
    	//]]>
    </script>
    J'ai bien mon alerte.

    Par contre si je tente de charger des fichiers JS externes, on dirait qu'il s'en tape.

    Dans la réponse firebug, j'ai bien dans le header de la page:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <script type="text/javascript" src="http://www.xxxxx.com/scripts/components/Calculator.js"></script>
    <script type="text/javascript" src="http://www.xxxxx.com/scripts/components/calculator-view.js"></script>
    Calculator est une classe, et calculator-view.js contient quelquechose du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    var calculatorValues =  {
    	term: 15,
    	interestRates: 4.30,
    	insuranceRates: 0.36
    };
    var calculator = new Calculator('monthly', calculatorValues);
    Sauf que, rien à faire, il ne me charge pas les scripts.

    Je ne veux pas les charger dans la page principale car je voudrais qu'il ne soient compilés que lorsque j'appelle ma page via mon Updater, et détruits à la fin.


    Une idée ?

    Merci,

    A+ benjamin.

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 92
    Points : 57
    Points
    57
    Par défaut
    Hmmm petite précision:

    Si je fais directement dans la page:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <script type="text/javascript">
    	// <![CDATA[
    	var calculatorValues =  {
    		term: 15,
    		interestRates: 4.30,
    		insuranceRates: 0.36
    	};
    	var calculator = new Calculator('monthly', calculatorValues);
    	//]]>
    </script>
    Le code n'est pas bien interprété, alors que le "alert()" oui. Qu'est-ce que j'écris mal la dedans, ou qu'est-ce qu'il ne sait pas lire ?

    Edit:

    C'est l'instanciation qu'il arrive pas à interpréter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var calculator = new Calculator('monthly', calculatorValues);

  3. #3
    Membre expérimenté
    Avatar de gwyohm
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2007
    Messages
    925
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 925
    Points : 1 333
    Points
    1 333
    Par défaut
    Ce ne serait pas que le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var calculatorValues =  {
    	term: 15,
    	interestRates: 4.30,
    	insuranceRates: 0.36
    };
    var calculator = new Calculator('monthly', calculatorValues);
    s'execute avant que le js où la classe Calculator soit téléchargé et parsé ?
    on ne dit pas "ça ne marche pas" on dit "je suis incapable de faire fonctionner correctement les outils mis à ma disposition"
    Pas de question technique par MP

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    319
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 319
    Points : 351
    Points
    351
    Par défaut
    En fait, tu ne peux pas utiliser l'objet Ajax.Updater pour créer des liens vers des scripts qui seraient chargés à la volée. D'ailleurs, tu ne pourrais faire ce gener de choses qu'au moment où le navigateur charge la section head il me semble. C'est d'ailleurs de cette particularité dont profitent certaines bibliothèques comme script.aculo.us.

    Ajax.Updater, en interne, effectue simplement un appel à la méthode String#evalScripts, ce qui a pour effet d'évaluer le corps des éléments script. Dans ton cas, tu espère que ton premier script (Calculator.js) soit chargé au moment où tu exécutes ton code qui instancie un objet Calculator. Hélàs, comme je l'explique plus haut, ton script n'est tout simplement pas chargé à ce moment là donc... hé ! Calculator n'est pas même définit. Je me trompe ?

    Si tu as Firefox je te conseille d'utiliser Firebug pour surveiller ton activité HTTP. Tu verras exactement ce qui transite entre ton navigateur et le serveur. Si tu ne vois pas trace de ton script bien aimé, c'est simplement qu'il n'est pas demandé au serveur.

Discussions similaires

  1. Réponses: 1
    Dernier message: 24/06/2011, 11h27
  2. Chargement fichier swf externe
    Par laurent94 dans le forum ActionScript 3
    Réponses: 4
    Dernier message: 21/06/2011, 14h41
  3. Fichier jpg externe dans une animation
    Par skeut dans le forum Intégration
    Réponses: 2
    Dernier message: 31/08/2007, 09h51
  4. [FLASH 8] Chargement fichier swf externe
    Par Chronax dans le forum Flash
    Réponses: 4
    Dernier message: 18/07/2006, 10h08
  5. Réponses: 10
    Dernier message: 29/10/2004, 18h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo