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

JavaScript Discussion :

[AJAX] Chargement de pages


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 3
    Points : 3
    Points
    3
    Par défaut [AJAX] Chargement de pages
    Bonjour,

    Je suis en train de concevoir le nouveau site web de ma société en AJAX et j'ai un problème incompréhensible.

    Ma page principale est en php avec plusieurs div.

    Lorsque je clique sur un lien, j'execute une fonction javascript qui recoit en parametre un identifiant.

    Dans cette fonction, un bête switch sur l'identifiant qui appelle un Ajax.Updater sur le div souhaité avec le contenu d'une page php.

    Cependant, le problème est que la page se recharge automatiquement dans son intégralité et ne reste donc jamais sur le contenu qui m'interesse.Elle recharge toujours le contenu initialement présent au chargement.


    principale.php

    <html>
    <head>
    <title>
    Pygram - Services informatiques et solutions de gestion pour PME-PMI
    </title>
    <link href="css/menu.css" type="text/css" rel="stylesheet" >
    <link href="css/piedpage.css" type="text/css" rel="stylesheet" >
    <link href="css/menu2.css" type="text/css" rel="stylesheet" >
    <link href="css/contenu.css" type="text/css" rel="stylesheet" >
    <link href="css/contenumep.css" type="text/css" rel="stylesheet" >
    <script src="JS/prototype.js" type="text/javascript"></script>
    <script src="JS/fonction.js" type="text/javascript"></script>

    </head>

    <body onload="contenu('1');">
    <div id='menu'>
    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="800" height="250" id="menuswf" align="middle">
    <param name="allowScriptAccess" value="always" /><param name="movie" value="menu.swf" /><param name="quality" value="high" /><param name="scale" value="noscale" /><embed src="menu.swf" quality="high" scale="noscale" width="800" height="250" name="menuswf" align="middle" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
    </object>
    <A href="" onclick="contenu('2');">Test</A>
    <A href="" onclick="contenu('3');">Test2</A>
    </div>
    <div id='contenu'>
    </div>
    </body>
    </html>

    fonction.js

    function contenu(ident)
    {
    switch (ident)
    {
    case "1":
    new Ajax.Updater('contenu',
    'contenu1.php',
    {method: 'get'});
    alert('1');
    break;

    case "2":
    new Ajax.Updater('contenu',
    'contenu2.php',
    {method: 'get'});
    alert('2');
    break;

    case "3":
    new Ajax.Updater('contenu',
    'contenu3.php',
    {method: 'get'});
    alert('3');
    break;
    }
    }
    En gros quand je clique sur Test, il lance la fonction 'contenu', charge la page 'contenu2.php' dans le div 'contenu', ET LA, recharge ma page 'principale.php' alors qu'il ne devrait pas.

    Merci d'avance pour votre aide.

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    En fait je viens de résoudre le problème mais je ne comprends toujours pas.

    Tout simplement, dans le code, à la place de

    <A href="" onclick="contenu('2');">Test</A>
    <A href="" onclick="contenu('3');">Test2</A>
    j'ai maintenant

    <A href="javascript:contenu('2')">Test</A>
    <A href="javascript:contenu('3')">Test2</A>
    Quelqu'un peut-il m'expliquer la différence ?

    Merci

  3. #3
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    Citation Envoyé par nunurs007 Voir le message
    Quelqu'un peut-il m'expliquer la différence ?
    dans le 1° cas, suite à l'exécution de la fonction, le clic déclenche l'appel à l'url du href (non défini => page courante).
    Dans le 2° tu ne ne fais qu'appeler le lien ... qui consiste en la fonction elle-même.
    Dans ton 1° cas, tu aurais aussi pu corriger en faisant terminer ton onclick par un return false; (qui interrompt l'évènement onclick) ...

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  4. #4
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Points : 2 351
    Points
    2 351
    Par défaut
    Citation Envoyé par E.Bzz Voir le message
    (non défini => page courante).
    Je dirais pas "non defini" mais chaine vide, et cela correspond à la page
    par défaut du dossier courant. Dans le cas d'une page index on voit pas
    la différence.

    D'autre part, les onclick c'est très DOM0 :-) même si c'est très pratique,
    à lire pour info http://developer.mozilla.org/fr/docs...dEventListener
    Si ton code fait plus d'une ligne, c'est que tu as mal choisi ton langage !

Discussions similaires

  1. [AJAX] Chargement de page
    Par lesafir dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 31/07/2007, 15h18
  2. [AJAX] chargement de deux pages differentes dans deux div
    Par vacknov dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 12/06/2007, 17h31
  3. [AJAX] Chargement de la page
    Par vacknov dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 03/05/2007, 14h33
  4. [AJAX] Chargement d'une seule partie de la page
    Par gids01 dans le forum Général JavaScript
    Réponses: 14
    Dernier message: 25/03/2007, 19h44
  5. [AJAX] chargement infini de la page ..
    Par dada17 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 17/01/2007, 15h01

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