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] Question sur xhrconnection


Sujet :

AJAX

  1. #1
    Invité
    Invité(e)
    Par défaut [AJAX] Question sur xhrconnection
    Bonjour,
    j'utilise XHRConnection pour loader une page php dans une partie de mon site.
    A ceci s'ajoute un message d'attente.
    J'ai deux problèmes :
    1 - Le message ne disparait pas que la page est loader
    2 - Mon intégration se base sur un tuto qui charge la page quand ont clic sur un bouton. Comment faire pour que le chargement se fasse a l'ouverture de la page principale ?

    voici mon code
    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
     
    // Déclaration de la fonction de callback
    var remplirChamp = function (obj) {
    		str = obj.responseText;
    		rExp = '/"/';
    		document.getElementById('zoneCible').value = str.replace(rExp, '\"');			
    		document.getElementById('messageChargement').style.display = 'none';
    }
     
    function chargeFichier() {
    	// Création de l'objet
    	var XHR = new XHRConnection();		
    	XHR.setRefreshArea('zoneCible');
    	XHR.sendAndLoad("text.txt", "GET");
    	document.getElementById('messageChargement').style.display = 'block';
     
    	return true;
    }

  2. #2
    Membre chevronné Avatar de nadox
    Homme Profil pro
    Développeur
    Inscrit en
    Février 2010
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2010
    Messages : 360
    Par défaut
    Bonjour,
    http://xhrconnection.sutekidane.net/...le-chargement/

    1/ A quel moment définis-tu que ta fonction de callback doit être utilisée ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    XHR.sendAndLoad("text.txt", "GET"..........);
    2/ Il suffit d'appeler la fonction qui fait l'ajax au chargement de la page.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    window.onload = mafonction;
    par exemple.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Oui je sais il faut que je mette XHR.sendAndLoad("text.txt", "GET", remplirChamp);
    Le problème est que dans ce cas le texte ne s'affiche pas.

  4. #4
    Membre chevronné Avatar de nadox
    Homme Profil pro
    Développeur
    Inscrit en
    Février 2010
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2010
    Messages : 360
    Par défaut
    C'est que tu as surement une erreur dans la fonction de callback. Tu as bien une balise avec 'zonecible' pour id ?
    Tu peux faire voir le html ?
    Sinon il faut déjà savoir si la fonction de callback est éxécutée. Mets un 'alert' au début. Si il ne s'affiche pas, l'erreur est surement dans la fonction chargeFichier. Si il s'affiche, c'est que la fonction de callback n'arrive pas à faire ce que tu lui demande.

    EDIT : je ne crois pas que ton expression régulière pour remplacer les doubles guillemets fonctionne...

  5. #5
    Invité
    Invité(e)
    Par défaut
    Voici tout le code
    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
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     
    <!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>
    <title><?php echo $module_name ; ?></title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15" />
    <meta name="robots" content="noindex, nofollow" />
     
    <style>
    #messageChargement {
        -moz-border-radius: 6px 6px 6px 6px;
        background-color: #4F4F4F;
        border: 1px solid #EEEEEE;
        color: #EEEEEE;
        display: none;
        font-family: arial;
        left: 50%;
        margin-left: -60px;
        padding: 30px;
        position: fixed;
        text-align: center;
        top: 50%;
        width: 300px;
    }
    </style>
     
    <script type="text/javascript" src=<?php echo '"http://' . $_SERVER['HTTP_HOST'] . '/back_office/includes/js/jquery.load.page.js"' ; ?>></script>
     
    <script>
    // Déclaration de la fonction de callback
    var remplirChamp = function (obj) {
    		str = obj.responseText;
    		rExp = '/"/';
    		document.getElementById('zoneCible').value = str.replace(rExp, '\"');			
    		document.getElementById('messageChargement').style.display = 'none';
    }
     
    function chargeFichier() {
    	// Création de l'objet
    	var XHR = new XHRConnection();		
    	XHR.setRefreshArea('zoneCible');
    	XHR.sendAndLoad("text.txt", "GET", remplirChamp);
    	document.getElementById('messageChargement').style.display = 'block';
     
    	return true;
    }
    </script>
     
    </head>
    <body>
    		<div id="messageChargement"><div style="margin:0 auto;">Chargement des statistiques ...</div></div>	
     
    		<div id="zoneCible"></div>
     
    		<form name="formulaire" id="formulaire" action="/">
    			<input type="button" name="charger" value="Charger le fichier" class="button" onclick="chargeFichier();" />
    		</form>
    </body>
    </html>

  6. #6
    Membre chevronné Avatar de nadox
    Homme Profil pro
    Développeur
    Inscrit en
    Février 2010
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2010
    Messages : 360
    Par défaut
    Une div n'as pas de value...

  7. #7
    Invité
    Invité(e)
    Par défaut
    Quoi ?
    Je ne comprend pas, il n'y a pas de value dans mes div.

  8. #8
    Membre chevronné Avatar de nadox
    Homme Profil pro
    Développeur
    Inscrit en
    Février 2010
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2010
    Messages : 360
    Par défaut
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('zoneCible').value = str.replace(rExp, '\"');

  9. #9
    Invité
    Invité(e)
    Par défaut
    Haaaaaa oui en effet.
    Heuuu, il faut faire comment, bah oui je n''y connait rien en js dsl.
    j'ai testé différente chose. j'ai enlevé le .value, rajouté un # dans le nom de l'id.
    Mais je sèche.

  10. #10
    Membre chevronné Avatar de nadox
    Homme Profil pro
    Développeur
    Inscrit en
    Février 2010
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2010
    Messages : 360
    Par défaut
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('zoneCible').innerHTML = str.replace(rExp, '\"');

    Mais si tu n'y connais rien en javascript, il faudrait peut-être faire un tour sur les tutos et la FAQ, avant de l'utiliser !
    (AJAX = Asynchronous Javascript And Xml)

    Si ton objet XHRConnection te permet de manipuler l'ajax plus facilement, il ne te dispense pas de savoir faire du javascript !

  11. #11
    Invité
    Invité(e)
    Par défaut
    Merveilleux ca marche, merci beaucoup de ton aide.
    Concernant le Js, j'apprends a mesure de mes besoins, mais il me faut un peux d'aide pour avancer.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/05/2009, 09h59
  2. [AJAX] Question sur le statut qui passe de 1,2,3,4 et puis 1
    Par beegees dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 14/01/2009, 09h28
  3. [AJAX] Question sur ajax / rails
    Par Alec dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 05/04/2008, 00h37
  4. [AJAX] Question sur AJAX
    Par R@IZER dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 03/04/2006, 19h45
  5. [AJAX] Question sur un tutos ajax
    Par maximenet dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 23/03/2006, 21h05

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