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 :

Remplacement des données de #id_block par les données récupérées de la page ajax.php


Sujet :

jQuery

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 16
    Points : 11
    Points
    11
    Par défaut Remplacement des données de #id_block par les données récupérées de la page ajax.php
    Bonjour, je m'adresse à vous parce que je n'utilise jamais jQuery et Javascript cependant j'en ai actuellement besoin et je n'arrive pas à régler mon problème.
    Voici mon code javascript :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
        function connexion(user, password){  
            if(user != '' && password != '') {
                $.get('ajax.php', {  
                    user:user,
                    password:password
                }, function(data){  
    	    $(data).appendTo('#id_block');
                });  
            }  
        }
    Donc lors de l'appel de la fonction il ne se passe pas ce qui est prévu, autrement dit :
    • -Appel de la page ajax.php
    • -Récupération de ses données renvoyées.
    • -Remplacement des données de #id_block par les données récupérées de la page ajax.php


    J'ai donc lancé FireBug, j'obtient donc cette erreur lors de l'appel de la fonction :
    uncaught exception: [Exception... "Illegal operation on WrappedNative prototype object" nsresult: "0x8057000c (NS_ERROR_XPC_BAD_OP_ON_WN_PROTO)" location: "JS frame :: http://site.com/jquery-1.4.4.min.js :: anonymous :: line 141" data: no]
    J'ai comme vous pouvez le voir, la version 1.4.4 de jQuery.

    Je ne comprend pas d'où peux venir le problème, j'ai longtemps cherché mais la je sature, je cherche dans le vide donc je vous demande votre aide.

    Merci à vous.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 51
    Points : 85
    Points
    85
    Par défaut
    Salut,
    est-ce que user et password sont bien du texte et non des éléments du DOM ?
    Si ce sont des éléments du DOM, tu dois récupérer leur texte avec la fonction val().
    Ex :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var user = $('#user').val();
    À plus !
    Le propriétaire est éphémère, le libre est éternel.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 16
    Points : 11
    Points
    11
    Par défaut
    Effectivement le problème venait de là, merci d'avoir réglé mon problème, cependant cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function(data){  
    	    $(data).appendTo('#id_block');
                });
    Devrait en toute logique remplacer le contenu de la div qui possède l'id "#id_block" par le contenu récupéré en Ajax n'est ce pas ?
    Lorsque j'execute le code avec Firebug, on voit bien que le javascript récupère le contenu en Ajax de la page ajax.php, mais le javascript ne remplace pas l'ancien contenu de la div "#id_block" par le nouveau...
    Où se trouve mon erreur ?

    Merci à vous !

  4. #4
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Points : 22 933
    Points
    22 933
    Billets dans le blog
    125
    Par défaut
    Bonsoir

    Il est impossible de vous aider sans connaître le contenu de "data". Mais pour l'insérer dans le DOM par un appendTo() il doit s'agir d'un fragment HTML bien structuré.

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 51
    Points : 85
    Points
    85
    Par défaut
    Salut,
    tu souhaite mettre le contenu reçu à l’aide d’AJAX dans ton div ayant l’ID id_block ?

    Alors, tu dois faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function(data){
        $('#id_block').html(data);
    });
    En cas d’incertitude, la doc' de jQuery est bien remplie…
    (Tu aurais pu trouver la réponse ici…)

    À plus !
    Le propriétaire est éphémère, le libre est éternel.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 02/12/2013, 10h03
  2. Réponses: 9
    Dernier message: 04/03/2008, 13h48
  3. Réponses: 0
    Dernier message: 16/10/2007, 11h42
  4. Réponses: 2
    Dernier message: 05/02/2007, 10h19
  5. Espace disque occupé par les données
    Par klereth dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 13/12/2005, 13h18

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