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 :

.html : accès impossible du contenu


Sujet :

jQuery

  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10
    Par défaut .html : accès impossible du contenu
    Bonjour,

    J'ai un petit soucis qui me prend toutes mes ressources depuis 2 heures.

    Dans mon .js j'ai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $(document).ready(function(){
            $('#alert_account').click(function(){
                    $('#content_alert').html($('#show_account').html());
            });
            $('#edit_profile').click(function(){
                    alert("ok");
            });
     
    });
    Dans ma page .html j'ai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <div id="show_account" class="hidden">
            <a href="#" id="edit_profile">Modifier mon profil</a>
    </div>
    <a href="#" id="alert_account">Mon compte</a>
    <div id="content_alert"></div>
    Donc en gros, je clique sur "modifier mon profil", #content_alert est chargé avec le contenu de #show_account, mais quand je clique sur #edit_profile, rien ne se passe !
    Je précise que #show_account est par défaut caché, donc on ne le voit que quand il est appelé en jQuery dans #content_alert.

    Savez-vous si .html() empêche d'accéder à ce qui a été chargé à l'intérieur ?

    Merci!
    Nicolas

  2. #2
    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
    Salut,

    Donc ce n'est pas la fonction html() qui empêche d'accéder à quoi que ce soit, mais tout simplement tu modifies le DOM en rajoutant un div, et celui-ci n'est pas accessible, car inconnu dans le DOM d'origine.

    Il faut alors utiliser la fonction live() :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $('#edit_profile').live('click',function(){
    	alert("ok");
    });

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10
    Par défaut
    J'étais sûr que le problème allait être avec le DOM !
    Merci beaucoup en tout cas, ça marche impeccablement bien

  4. #4
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10
    Par défaut
    Maintenant j'ai un autre soucis, je génère un formulaire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <form method="post">
            <p>Prénom : <input type="text" name="first_name" value="prénom"/></p>
            <p>Nom : <input type="text" name="last_name" value="nom"/></p>
            <p>Adresse email : <input type="text" name="user_email" value="mail"/></p>
            <p><a href="#" id="edit_profile">Modifier mon profil</a></p>
    </form>
    Et j'essaye d'y accéder de cette façon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $('#edit_profile').live('click', function(){
            var first_name = $("#first_name").attr("id");
            var last_name = $("#last_name").val();
            var user_email = $("#user_email").value;
     
            alert(first_name);
            alert(last_name);
            alert(user_email);
    });
    Les 3 alertes me renvoient "undefined" avec ces 3 façons de récupérer la valeur, encore à cause du fait que ce ne soit pas dans le DOM ?

    Merci pour votre aide

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 23
    Par défaut
    C'est normal, tu n'as pas mis d'attribut ID sur tes champs or dans ton selecteur tu utilises # ce qui signifie l'ID.

    Essais ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <form method="post">
            <p>Prénom : <input type="text" name="first_name" id="first_name" value="prénom"/></p>
            <p>Nom : <input type="text" name="last_name" id="last_name" value="nom"/></p>
            <p>Adresse email : <input type="text" name="user_email"  id="user_email" value="mail"/></p>
            <p><a href="#" id="edit_profile">Modifier mon profil</a></p>
    </form>

  6. #6
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10
    Par défaut
    Mon Dieu j'ai honte, je cherchais tellement la petite bête que j'ai pas vu le boeing que j'avais sous le nez !!
    Merci, ça marche en effet beaucoup mieux...

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

Discussions similaires

  1. MySQL 4.1 + PHPmyAdmin - Accès impossible
    Par messier79 dans le forum Outils
    Réponses: 5
    Dernier message: 20/03/2006, 14h37
  2. [Sql Server CE 2.0] Acces impossible depuis Pocket PC
    Par joefou dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 02/09/2005, 14h24
  3. [html] Accès restreint sur répertoire
    Par francis m dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 22/05/2005, 13h27
  4. [Applet][JTextPane][HTML]Accès a une image du JAR
    Par SamDaKap dans le forum Applets
    Réponses: 4
    Dernier message: 10/08/2004, 16h17
  5. Accès impossible au serveur MySQL
    Par aliasjcdenton dans le forum Installation
    Réponses: 3
    Dernier message: 19/05/2003, 17h11

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