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

AJAX Discussion :

[AJAX] Ajax et appel de fichiers javascripts


Sujet :

AJAX

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Points : 316
    Points
    316
    Par défaut [AJAX] Ajax et appel de fichiers javascripts
    Bonjour à tous,

    Suite à de petits bugs que j'évoquerai plus loin je me pose des questions concernant la constructions de mes pages faisant appel à des requêtes Ajax.

    La page de base a un shéma simple et charge des scripts Javascrit :

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Test</title>
     
    <script type="text/javascript" src="../../js/jquery.js"></script>
    <script type="text/javascript" src="../../js/jquery-ui-min.js"></script>
    <script type="text/javascript" src="../../js/acti.js?alea=157"></script>
    <link type="text/css" href="../../css/ui/ui.theme.css" rel="Stylesheet" />
    <link type="text/css" href="../../css/ui/ui.core.css" rel="Stylesheet" />
    <link type="text/css" href="../../css/ui/ui.tabs.css" rel="Stylesheet" />
     
    <style>
    .ui-tabs .ui-tabs-hide {
         display: none;
    }
    </style>
     
    </head>
    <body style="font-family:Arial, Helvetica, sans-serif; font-size:12px">
     
    <table width="100%" border="0" cellspacing="0" cellpadding="5" align="center" style="margin:0px">
      <tr>
        <td colspan="4" align="center">
     
    <div id="example" style="background:none">
    	<ul>
    		<li><a href="page_01.php?var1=foo&var2=bar" title="cible"><span>Page 1</span></a></li>
    		<li><a href="page_02.php?var1=foo&var2=bar" title="cible"><span>Page 2</span></a></li>
    		<li><a href="page_03.php?var1=foo&var2=bar" title="cible"><span>Page 3</span></a></li>
    	</ul>
    </div>
    &nbsp;<br/>
    <div align="left" id="cible" class="ui-tabs-hide" style="background:none;overflow:auto; padding-right:10px" ></div>	
    	</td>
      </tr>
     
        </tr>
    </table>
    </body>
    </html>
    Les scripts appelés quand on clique sur un onglet sont donc affichés dans la Div id="cible".

    Première question :

    chacun de ces scripts commence par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <?php
    header('Content-Type: text/html; charset=ISO-8859-1');
    ?>
    Et ensuite ?
    peut-il ? doit-il ? ne faut-il absolument pas ? avoir une balise <body> ?

    Deuxième question : Concernant le chargement de fichier .js

    Chaque "page" (plutot script) appelé lorsqu'on clique sur un onglet fait appel à des fonctions javascripts qui lui sont propres et donc pas utiles aux autres scripts.

    tous les chargements de fichiers javascripts (contenant les fonctions) doivent-ils être fait sur la première page ou peuvent-ils être chargés lorsque le script appelé est chargé ?

    en gros, ceci est-il possible dans mon fichier page_01.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?php
    header('Content-Type: text/html; charset=ISO-8859-1');
    ?>
    <script type="text/javascript" src="js/scriptPage1.js"></script>
    Ceci afin de ne pas être obligé de charger tous les fichiers de fonction javascript si l'utilisateur ne clique sur aucun onglet et reste sur la page chargée à l'ouverture.

    Je pose cette question car avant j'ai bien sûr essayé et constaté un petit bug :

    si j'ai par exemple dans une fonction une instruction :

    si le script est chargé par la première page cela s'affiche sans problèmes, s'il est chargé par le fichier qui l'utilise, le "è" est remplacé par un [] (carré) dans la popup d'alert.

    ce problème est également présent dans les datepicker présent sur la page (décembre : d[]cembre)

    Merci donc de me brieffer un peu sur tout cela

    Bonne journée à tous

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 64
    Points : 77
    Points
    77
    Par défaut
    peut-il ? doit-il ? ne faut-il absolument pas ? avoir une balise <body> ?
    Pour moi, non ce n'est pas obligé voir ca sert à rien. Tu peux avoir à retourner une petite portion de HTML, une simple chaine de caractères, une chaine JSON, ... donc pas d'interet d'avoir de balise body

    tous les chargements de fichiers javascripts (contenant les fonctions) doivent-ils être fait sur la première page ou peuvent-ils être chargés lorsque le script appelé est chargé ?
    Pour faire une réponse simple : oui ils doivent être fait sur la première page.

    S'il y a des fonctions JS ou des appels en ligne, ils ne seront pas interprétés (les fonctions seront inutilisables)

    On comprend mieux que les sites utilisant beaucoup d'ajax (ex Gmail) mette du temps à se charger.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 530
    Points : 316
    Points
    316
    Par défaut
    Bonjour,

    Merci de ta réponse.

    S'il y a des fonctions JS ou des appels en ligne, ils ne seront pas interprétés (les fonctions seront inutilisables)
    ça fait plusieurs fois que l'on me dit ça et je n'ai jamais eu ce problème avec les fonctions appelées au chargement de la page dans la div...

    Autant quand j'utilisais la bibliothèque Prototype il fallait prendre garde à le préciser :

    Autant depuis que j'utilise jQuery il n'y a même pas à le préciser et le seul problème constaté est toujours cette histoire de caractères accentués pas interprétés.

    quoi qu'il en soit ça m'oblige quand même à appeler les scripts au chargements de la première page et c'est effectivement dommage au niveau du temps de chargement cette page.

    Vos idées et constatation sur le sujet m'intéressent

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Appel de fichier javascript et message d'erreur
    Par kerozen77 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 25/10/2015, 01h30
  2. appel de fichiers javascript (Cufon) très lourds..
    Par van___fanel dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 30/09/2010, 19h28
  3. Appel du fichier javascript
    Par Sh4dow49 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 02/04/2010, 15h51
  4. [AJAX] Fonction qui appelle mauvais fichier
    Par Invité dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 20/02/2009, 13h10

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