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 :

id, getelementbyid et tag html


Sujet :

jQuery

  1. #1
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut id, getelementbyid et tag html
    Bonjour,

    Cette question devrait peut-être se trouver dans la rubrique jquery mais je ne sais pas si mon problème de javascript, de jquery ou de ma balise.

    En html:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    ...
    <script type="text/javascript" src="javascript/jquery.js"></script>
    ...
    <p>
    	<label id="lheure" >heure locale</label>
    </p>
    En js:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function Affiche(){	
    	alert( document.getElementById("lheure").innerHTML );
    	alert( $("lheure").innerHTML );
    }
    Le premier alert affiche: "heure locale"
    Le second affiche: "undefined"

    le $ de jquery n'est-il pas censé renvoyer la même chose que document.getElementById ??

    Papy !

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    Oui elle devrait être dans jquery ...
    Elle concerne en effet un souci de syntaxe au niveau du selecteur :
    En jquery pour selectionner sur l'id il faut mettre # devant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function Affiche(){	
    	alert( document.getElementById("lheure").innerHTML );
    	alert( $("#lheure").innerHTML );
    }
    Un petit topo sur les bases des selecteurs en jquery http://www.developpez.net/forums/d89...y/#post5108986

  3. #3
    Membre averti Avatar de jota5450
    Inscrit en
    Janvier 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Janvier 2006
    Messages : 263
    Points : 332
    Points
    332
    Par défaut
    bjour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    alert(document.getElementById("lheure").innerHTML );
     
     
    alert($('#lheure').html());

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    Trop lent petit scarabée

  5. #5
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut
    même avec #, ça me renvoie undefined dans la boite de dialogue.

    peut-être faut-il utiliser autre chose que innerHTML avec jquery ?

  6. #6
    Membre averti Avatar de jota5450
    Inscrit en
    Janvier 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Janvier 2006
    Messages : 263
    Points : 332
    Points
    332
    Par défaut
    avec jquery, c´est html et non innerhtml.

  7. #7
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut
    Citation Envoyé par jota5450 Voir le message
    avec jquery, c´est html et non innerhtml.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    alert( $("#lheure").html );
    me renvoie:

    function (a) {
    if (a === w) {
    return this[0] && this[0].nodeType === 1 ? this[0].innerHTML.replace(Ja, "") : null;
    } else if (typeof a === "string" &&
    !ta.test(a) &&
    (c.support.leadingWhitespace || !V.test(a)) &&
    !F[(La.exec(a) || ["", ""])[1].toLowerCase()]) {
    a = a.replace(Ka, Ma);
    try {
    for (var b = 0, d = this.length; b < d; b++) {
    if (this[b].nodeType === 1) {
    c.cleanData(this[b].getElementsByTagName("*"));
    this[b].innerHTML = a;
    }
    }
    } catch (f) {
    this.empty().append(a);
    }
    } else {
    c.isFunction(a) ? this.each(function (e) {var j = c(this), i = j.html();j.empty().append(function () {return a.call(this, e, i);});}) : this.empty().append(a);
    }
    return this;
    }
    Là, plus ça va moins je comprends ... surtout que le $, je l'ai déjà utilisé ailleurs sans avoir ce genre de problème. Enfin, jamais sur un label ...

    [Edit 16:31]

    en fait, je viens de voir que je peux mettre n'importe quoi, ça me renvoie un texte de fonction

    alert( $("sfjksqleslcwc,").html );

    ça fait pareil que ci-dessus

    [Edit 16:43]

    j'ai réduit le code au strict minimum.

    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
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
            <title>Page de tests</title>
     
    		<script type="text/javascript" src="javascript/jquery.js"></script>
    		<script type="text/javascript" src="javascript/scripts.js"></script>
     
        </head>
        <body>
     
    		<p>
    			<label id="lheure" >heure locale</label>
    			<input id="bouton" type="button" value="Test js" />
    		</p>
     
        </body>
    </html>
    fichier scripts.js
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $(document).ready(function(){
    		$("#bouton").click(Affiche);
    	}
    )
     
    function Affiche(){
    	alert( $("#lheure").innerHTML );
    }
    marche toujours pas ... mauvais w-e ! mauvais kharma ??

  8. #8
    Membre averti Avatar de jota5450
    Inscrit en
    Janvier 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Janvier 2006
    Messages : 263
    Points : 332
    Points
    332
    Par défaut
    comme mon premier message: xxx.html() ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    alert($('#lheure').html());
    et non ..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    alert( $("#lheure").html );
    et apres relire tes messages.. je cois que tu veux

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    alert($('#lheure').text());

  9. #9
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut
    bingo !

    alert($('#lheure').text());

    j'avais du oublier les parenthèses ... honte sur moi !

    et un grand merci à toi !

  10. #10
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    Désolé, dans la précipitation je me suis focalisé sur le selecteur.

    Sur les première versions de jquery il me semble que l'on pouvait utiliser le innerHTML en passant par .eq(0) ou [0], je ne sais pas si c'est toujours vrai

  11. #11
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 494
    Points : 3 129
    Points
    3 129
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    Désolé, dans la précipitation je me suis focalisé sur le selecteur.
    Mais y'a pas de mal ...

    Le coup de main a quand même été utile

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

Discussions similaires

  1. id, getelementbyid et tag html
    Par Papy214 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 07/08/2010, 15h06
  2. [DTD] Tags Html dans XML ---> Etendre la dtd du Xhtml
    Par tipaquo dans le forum Valider
    Réponses: 14
    Dernier message: 19/07/2010, 09h09
  3. utiliser un bean dans le tags html:link
    Par clement42 dans le forum Struts 1
    Réponses: 3
    Dernier message: 29/07/2005, 18h36
  4. [struts html tag] html:link associé à un event javascript
    Par VinceFromBcn dans le forum Struts 1
    Réponses: 2
    Dernier message: 16/03/2005, 11h59
  5. [STRUTS] utilisation de plusieurs tags <html:subm
    Par Super Castor dans le forum Struts 1
    Réponses: 6
    Dernier message: 23/06/2004, 11h42

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