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] Appel des pages en Ajax


Sujet :

AJAX

  1. #1
    Membre du Club
    Profil pro
    Développeur Web
    Inscrit en
    Novembre 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2007
    Messages : 65
    Points : 53
    Points
    53
    Par défaut [AJAX] Appel des pages en Ajax
    Salut, j'ai une liste (ul li) des rubriques, et selon la rubrique sélectionnée j'affiche une formulaire bien précise.
    le problème en utilisant http.open('GET', 'form1.php', true);
    j'arrive pas à rendre l'url dynamique c a d il m'affiche la même formulaire quelque soit la rubrique sélectionnée. Ce que j'ai trouvé comme idée: à chaque fois l'utilisateur sélectionne une rubrique, je récupère l'id du "li" et je l'envoi à la page ajax.js et je rends l'url dynamique c a d elle devient sous cette forme (form"id"(id dynamique).php). j'ai essayé mais ça na pas marché.
    svp aidez moi pour résoudre ce problème.
    Merci d'avance.

    j'ai réalisé 2 principaux pages :
    index.php contenant la liste des rubriques en faisant appel à la page ajax.js
    ma page ajax.js

    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
    var http; // Notre objet XMLHttpRequest
     
    function createRequestObject()
    {
        var http;
        if (window.XMLHttpRequest)
        { // Mozilla, Safari, IE7 ...
            http = new XMLHttpRequest();
        }
        else if (window.ActiveXObject)
        { // Internet Explorer 6
            http = new ActiveXObject("Microsoft.XMLHTTP");
        }
        return http;
    }
     
    function form()
    {
        http = createRequestObject();
        http.open('GET', 'form1.php', true);
        http.onreadystatechange = handleAJAXReturn;
        http.send(null);
    }
     
    function handleAJAXReturn()
    {
        if (http.readyState == 4)
        {
            if (http.status == 200)
            {
     
                document.getElementById('box').innerHTML = http.responseText;
            }
            else
            {
                alert('Pas glop pas glop');
            }
        }
    }

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Tu es au courant qu'il est possible de passer des paramètres dans un requête ?

  3. #3
    Membre du Club
    Profil pro
    Développeur Web
    Inscrit en
    Novembre 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2007
    Messages : 65
    Points : 53
    Points
    53
    Par défaut
    oui je sais que c possible d'envoyer des paramètres dans:
    http.open('GET', 'form1.php', true); pour que l'url soit dynamique.
    j'ai essayé de récupérer l'id de chaque "li" avec jquery et l'envoyer en utilisant la fonction $.ajax, vers ajax.js ça na pas marché.
    svp, Si vous avez une idée ou une solution pour m'aider n'hésitez pas.
    merci

  4. #4
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mars 2010
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2010
    Messages : 43
    Points : 36
    Points
    36
    Par défaut
    Je ne vois pas trop où tu récupères l'ID du "li" dans ton code ?

    Et je pense aussi qu'il est mieux d'utiliser $.ajax de jQuery, voir $.post pour simplifier l'écriture.
    Ton souci est plus de comment récupérer l'ID ?

    Il faut que tu récupères le click sur tes li :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $('#ID_UL li').click(function () 
    {
        $.post('form.php', { id : $(this).attr('id') }, function (data)
        {
             $('box').html(data);
        }
    });
    Et dans ton script Php, tu récupères l'ID avec un "$_POST['id']".
    Pas besoin de plusieurs pages.

Discussions similaires

  1. [AJAX] Appel deux pages
    Par sooprano dans le forum AJAX
    Réponses: 10
    Dernier message: 25/03/2009, 19h11
  2. [AJAX] imbrication des pages
    Par yosraisi dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 12/03/2008, 17h32
  3. [AJAX] Solution Ajax / référencement des pages
    Par speedev dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 15/02/2008, 10h36
  4. [AJAX] Charger des pages en Ajax
    Par persia dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 10/09/2007, 17h07
  5. [AJAX] Appeller une page php en Ajax pour action sur Mysql
    Par Overstone dans le forum Général JavaScript
    Réponses: 17
    Dernier message: 20/07/2007, 19h23

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