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

jQuery Discussion :

Accès au contenu d'un div à partir d'une autre page


Sujet :

jQuery

  1. #1
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 48
    Par défaut Accès au contenu d'un div à partir d'une autre page
    Bonjour,

    J'ai cherché un peu sur le net et dans le forum avant de créer le sujet.
    Mon problème c'est que je n'arrive pas à lire le texte d'un div qui se trouve dans une autre page.
    sachant que mes liens pour les pages sont sous cette forme : parties_fixe(header,footer,menugauche) et la partie centrale qui change en fonction de la valeur d'une variable que je renvoi en fonction du lien cliqué dans le menu.


    voilà le code que j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if($("#mondiv").text()){
    		$("#bouton").css("background-color","red");
    		}
    en fait le but est d'afficher un bouton du menu en rouge si le div contient du texte.
    ce code marche que quand je suis dans la page qui contient #mondiv

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 850
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 850
    Par défaut
    salut,

    mais comment fais-tu pour lire les infos qui sont dans les autres pages ?
    => il existe deux solutions :
    - les iframes => bouh c'est pas bien
    - AJAX

  3. #3
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 48
    Par défaut
    Citation Envoyé par boboss123 Voir le message
    salut,

    mais comment fais-tu pour lire les infos qui sont dans les autres pages ?
    => il existe deux solutions :
    - les iframes => bouh c'est pas bien
    - AJAX
    Ajax ? peux tu m'éclairer la dessus ?

    En fait je veux pas inclure la page, mais juste lire le contenu d'un de ses #DIV

  4. #4
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 48
    Par défaut
    Est ce qu'il y a un moyen pour faire un include mais sans vraiment inclure la page ? (oui pas très logique comme phrase )
    juste charger le contenu pour pouvoir le lire et l'utiliser !

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 850
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 850

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 13
    Par défaut
    Citation Envoyé par PsyKtra Voir le message
    Ajax ? peux tu m'éclairer la dessus ?
    Ajax c'est la méthode de fonctionnement de jQuery par exemple
    http://fr.wikipedia.org/wiki/Asynchr...Script_and_XML


    Mais moi y'a un truc que je ne comprend pas dans ta question : quand tu parles d'autres pages, elle sont où ces pages ? Dans d'autres onglets du navigateurs ? Dans des pop-ups ? Dans d'autres fenêtres simples du navigateur ? Dans des iframes ?
    Ou simplement tu parles de pages que tu n'affiches pas (qui seraient dans des sous-dossiers) et dont tu souhaites manipuler le contenu dans ta page active ?

    Et donc, la possibilité d'accéder aux données dépend complètement de ce que tu vas répondre

  7. #7
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 48
    Par défaut
    Citation Envoyé par zeb_panam Voir le message
    Ajax c'est la méthode de fonctionnement de jQuery par exemple
    http://fr.wikipedia.org/wiki/Asynchr...Script_and_XML


    Mais moi y'a un truc que je ne comprend pas dans ta question : quand tu parles d'autres pages, elle sont où ces pages ? Dans d'autres onglets du navigateurs ? Dans des pop-ups ? Dans d'autres fenêtres simples du navigateur ? Dans des iframes ?
    Ou simplement tu parles de pages que tu n'affiches pas (qui seraient dans des sous-dossiers) et dont tu souhaites manipuler le contenu dans ta page active ?

    Et donc, la possibilité d'accéder aux données dépend complètement de ce que tu vas répondre
    C'est des pages que je n'affiche pas effectivement et qui sont dans un dossier "pages_centrales" qui, comme son nom l'indique, contient tous les fichiers .php appelé au centre de la page. Et donc je souhaite lire leur contenu.

    et pour Ajax, biensur je sais c'est quoi (si j'utilise jquery et je connais pas ajax ), mais c'était plutôt m'éclairer sur la solution avec ajax :

    Envoyé par boboss123
    salut,

    mais comment fais-tu pour lire les infos qui sont dans les autres pages ?
    => il existe deux solutions :
    - les iframes => bouh c'est pas bien
    - AJAX

  8. #8
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 850
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 850
    Par défaut
    si tu sais ce qu'est jquery et ajax, je ne vois pas ce qui te bloque...
    (remarque attention avec ajax tu ne peux récupérer des infos que sur le même serveur (mécanisme de sécurité) => ce qui est ton cas)

    la doc jquery sur ajax : http://docs.jquery.com/Ajax

  9. #9
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 48
    Par défaut
    Citation Envoyé par boboss123 Voir le message
    si tu sais ce qu'est jquery et ajax, je ne vois pas ce qui te bloque...
    (remarque attention avec ajax tu ne peux récupérer des infos que sur le même serveur (mécanisme de sécurité) => ce qui est ton cas)

    la doc jquery sur ajax : http://docs.jquery.com/Ajax
    en utilisant ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if($("#mondiv").text())
    {
    $("#bouton").css("background-color","red");
    }
    Sachant que : #mondiv est un div de la page alerte.php et que ma page courante est accueil.php.
    et ce code ne marche pas, vois-tu un autre moyen pour y accéder ?

  10. #10
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 850
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 850
    Par défaut
    quel est ton code js pour récupérer la page et afficher le div dans ta page ?

  11. #11
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 48
    Par défaut
    Citation Envoyé par boboss123 Voir le message
    quel est ton code js pour récupérer la page et afficher le div dans ta page ?
    Envoyé par PsyKtra
    C'est des pages que je n'affiche pas effectivement et qui sont dans un dossier "pages_centrales" qui, comme son nom l'indique, contient tous les fichiers .php appelés au centre de la page. Et donc je souhaite lire leur contenu.
    je n'ai pas de code puisque je ne les affiche pas.

  12. #12
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 850
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 850
    Par défaut
    Citation Envoyé par PsyKtra Voir le message
    je n'ai pas de code puisque je ne les affiche pas.
    ok pour ne pas l'afficher, mais tu as quand même bien compris qu'il faut récupérer le fichier pour pourvoir le traiter => donc utilisation d'ajax => donc il faut forcement du code...

    moi je ferais un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    $.get("alerte.php", function(data){
     
       // j'ai un doute sur ça :
       var maPage = $.html(data); // tranformation du string en objet jquery ???
     
       var myStr = $(maPage).find("#mondiv").text();
       alert(myStr); // pour le debug
     
       if(myStr){
          $("#bouton").css("background-color","red");
       }
     
    });
    => a tester (je ne suis pas sure que jquery puisse convertir comme ça le texte récupérer en éléments DOM : quelqu'un peut confirmer ?)
    => sinon faudra interpréter toi meme la chaine...

  13. #13
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 48
    Par défaut
    c'est exactement ce genre de code que je cherche, qui sera lancé au démarrage..
    je viens de le tester il n'aime pas trop cette ligne var maPage = $.html(data);, mais par contre il reçoit les données sans problème dans data.
    j'ai essayé de bidouiller un peu pour pouvoir accéder au div mais ça n'a pas marcher.

  14. #14
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 850
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 850
    Par défaut
    héhé, je crois que j'ai trouvé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $.get("alerte.php", function(data){
     
       var maPage = $(data);
     
       var myStr = $(maPage).find("#mondiv").text();
       alert(myStr); // pour le debug
     
       if(myStr != ""){
          $("#bouton").css("background-color","red");
       }
     
    });

  15. #15
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 48
    Par défaut
    Aaaah c'est parfait !!

    merci beaucoup pour ton aide bogoss

  16. #16
    Membre éclairé
    Inscrit en
    Juillet 2010
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juillet 2010
    Messages : 292
    Par défaut
    Bonjour à tous !

    Je suis nouveau, je sais pas si je dois me présenter sur le site, je n'ai pas vu de topic approprié.

    Mais j'ai un souci concernant l'accès à un div se situant sur une autre page.

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

Discussions similaires

  1. ouvrir une div à partir d'une autre div
    Par chougadosu dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 15/06/2011, 09h51
  2. créer pages web à partir d'une autre page web
    Par genie007 dans le forum Langage
    Réponses: 6
    Dernier message: 31/03/2011, 23h55
  3. Fermer une fenêtre web à partir d'une autre page web.
    Par midotoon dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 23/02/2009, 03h44
  4. Appel d'une méthode à partir d'une autre page
    Par mona dans le forum ASP.NET
    Réponses: 9
    Dernier message: 15/09/2007, 23h52
  5. [iframe] Afficher une balise div à partir d'une autre frame
    Par bouchette63 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 13/10/2006, 11h01

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