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

JavaScript Discussion :

comment reconnaitre le type d'objet


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 60
    Par défaut comment reconnaitre le type d'objet
    bonjour a tous
    comment reconnaitre le type d'un objet
    je m'explique
    je fait une boucle sur un formulaire et j'aimerais pouvour reconaitre les objets qui sont a l'interieur mais je ne sais pas comment mis prendre
    pour une plus grande comprehention voila le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    function getform(){
    	var nodform = document.getElementsByTagName("form")[0];
    	for(i=0;i<nodform.childNodes.length;i++){
    		if(nodform.childNodes[i].tagName=="input"){alert('s');}// c'est ici que ca coince !!!
    		document.write(nodbody.childNodes[i]);
    	}
    }
    si l'un d'entre vous peut m'aider merci

  2. #2
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    bonjour,

    évite document.write pour afficher un résultat. J'ai amélioré le test, et j'affiche le résultat dans un div (dont l'id est idDiv).

    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
     
    function getform()
    {
        var divOut = document.getElementById("idDiv");
     
        var nodform = document.getElementsByTagName("form")[0];
        var noeud;
     
       for(i=0;i<nodform.childNodes.length;i++)
        {
            noeud = nodform.childNodes[i];
     
            if (typeof(noeud)=="object")
            {
              if(noeud.tagName)
              {
                if(noeud.tagName.toLowerCase()=="input")
                    alert('s');
              }
            }
    	divOut.innerHTML = divOut.innerHTML + noeud.tagName +"<br>";
        }
    }

  3. #3
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 60
    Par défaut
    genial c'est exactement ca
    mais pour aller plus loin j'aurais besoins de retrouver les attributs pour les reecrire seulement attributesName existe pas (ou je l'ai pas trouver)
    peu tu encore m'aider pour ca et pendant que je te tien pourrais tu me dire comment recuperer les noeux text merci mille fois

  4. #4
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 60
    Par défaut
    j'ai tenter un truc comme ca mais aucun succes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    if(noeud.tagName)
              {
                if(noeud.tagName.toLowerCase()=="input")
    				for (z=0;z<noeud.attributes.length;z++){
    					attrib+=noeud.attributes[z];
    				}
                    alert(noeud.tagName.toLowerCase()+attrib);
              }

  5. #5
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Quels genres d'attributs veux-tu récupérer ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    var prop="", p;
    if(noeud.tagName)
              {
                if(noeud.tagName.toLowerCase()=="input")
                {
    				for (p in noeud)  //noeud.style
                                    {
    					prop = prop+" ; "+p;
    				}
                 }
                  alert(noeud.tagName.toLowerCase()+"\n"+prop);
              }

    pour les noeuds texte, je ne sais pas. Que cherches-tu à faire précisément ? Pourquoi cette fonction ?

  6. #6
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 60
    Par défaut
    en fait je cherche a ajouter des lignes dans un formulaire
    je me rend compte maintenant que c'etait peutetre pas la bonne methode
    une ligne comporte plusieur input et selecte
    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
    <form action="" method="post">
    	<input name="div" type="text" /> id div 
    	<input name="width" type="text" class="inputpx" /> width 
    	<input name="height" type="text" class="inputpx" /> height
    	<select name="position">
    		<option value=""></option>
    		<option value="absolute">absolute</option>
    		<option value="fixed">fixed</option>
    		<option value="inherit">inherit</option>
    		<option value="relative">relative</option>
    	</select> position  
    	<input name="top" type="text" class="inputpx" /> top 
    	<input name="left" type="text" class="inputpx" /> left
    	<input name="text" type="text" /> text
    	<input name="checkmore" type="checkbox" onclick="getform();" /><br />
    	<input name="creer" type="submit" value="creer" />
    </form>
    je voulais pouvoir placer les nouvelles lignes au dessus du submit puis d'ajouter le checkbox uniquement a la derniere ligne

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

Discussions similaires

  1. Comment modéliser des types d'objet ?
    Par stackpuke dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 08/08/2009, 15h51
  2. Comment reconnaitre le type de clavier (API windows)
    Par moulydi dans le forum Débuter
    Réponses: 8
    Dernier message: 08/07/2009, 15h58
  3. comment reconnaitre le type de donnes ?
    Par donyas dans le forum Langage
    Réponses: 5
    Dernier message: 22/03/2007, 23h03
  4. [POO] Comment connaître le type d'un objet
    Par zizou39 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 01/03/2005, 09h46
  5. Comment detecter le type d'un objet?
    Par nickylarson dans le forum C++Builder
    Réponses: 3
    Dernier message: 24/06/2003, 15h23

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