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 lire la valeur d'un choix quelque soit le select ou l'input ?


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    rien
    Inscrit en
    Décembre 2015
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : rien

    Informations forums :
    Inscription : Décembre 2015
    Messages : 282
    Par défaut Comment lire la valeur d'un choix quelque soit le select ou l'input ?
    Salut

    Je pensais avoir trouvé sur le forum la solution à mon problème mais non donc je poste pour de bon :

    J'ai une suite de sélects et de input text qui sont visibles ou invisibles selon le choix fait dans les sélecteurs, et avant de les rendre invisibles je souhaiterais mémoriser les champs qui ont été remplis et les options qui ont été choisies.
    Le problème c'est que je ne sais pas quand je dois utiliser input.value ou option.value.

    Je cherche un truc dans le genre :

    - Si c'est un select : sauver la valeur de cette façon 1
    - Si c'est un input text : sauver la valeur de cette façon 2



    A moins qu'il y ait plus simple ?

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 209
    Par défaut
    Bonjour,
    avec un minimum de recherche
    Les champs des formulaires !

  3. #3
    Membre très actif
    Homme Profil pro
    rien
    Inscrit en
    Décembre 2015
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : rien

    Informations forums :
    Inscription : Décembre 2015
    Messages : 282
    Par défaut
    Salut

    Il n' y a rien qui convienne à mon problème dans ces tutos là :/

    Je sais lire la valeur des champs d'un formulaire, mais le problème c'est ça :

    Le problème c'est que je ne sais pas quand je dois utiliser input.value ou option.value.
    En fait quand j'écris : "je ne sais pas quand je dois", il s'agit en fait de la fonction de traitement automatique que je veux créer qui ne sait pas, il ne s'agit pas de moi, et mon problème est de le lui faire comprendre.

    Penses-tu que je pourrais faire :

    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
     
    <select id="toto0">
    <option>force</option>
    <option>vitesse</option>
    <option>sagesse</option>
    </select>
     
    <input type="text" id="toto1" />
     
    // Une fonction qui ferait ce principe là (fausse instruction)
    // En fait ici c'est "toto"+i et non "toto0" !
    if (toto0.length>1){
       // C'est un select, traitement 1
    }else
    {
       // C'est un input text, traitement 2
    }
    En fait je me dis que si je pouvais tester la longueur d'un item du formulaire je pourrais résoudre mon problème, j'ai donc posé la question dans un autre post me suis trompé, désolé :/
    Enfin bon le problème reste entier pour le moment :/

  4. #4
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 209
    Billets dans le blog
    52
    Par défaut
    Recherche Google :
    element.tagNameEt j'ai trouvé ça via mon téléphone portable, avec un réseau pourri...
    Il s'agirait de commencer à faire un minimum de recherche avant de poser une question. En particulier quand les 4 premier résultat d'une simple recherche sonne la réponse.

    Cordialement,
    Patrick Kolodziejczyk.
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  5. #5
    Membre très actif
    Homme Profil pro
    rien
    Inscrit en
    Décembre 2015
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : rien

    Informations forums :
    Inscription : Décembre 2015
    Messages : 282
    Par défaut
    Il s'agirait de commencer à faire un minimum de recherche avant de poser une question. En particulier quand les 4 premier résultat d'une simple recherche sonne la réponse.
    Je ne crois pas que ça réponde à mon problème, tagname c'est pour trouver un objet par son nom, d'ailleurs là je n'utilise pas de noms mais des id, et en plus ce n'est pas ce que je cherche...

    Voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    	<div id="toto2" class="toto"> <!-- select 2 -->
    			<label id="labcaract">Quelle caractéristique :</label><br/>
    			<select name="caracts">
    			    <option>vitesse</option>
    			    <option>poids</option>
    			    <option>hauteur</option>
    			    <option>largeur</option>
                  		</select>
    	</div>
    Je reformule mieux mon problème car je crois que je n'étais pas très précis en fait :/

    Voilà, en fait j'ai un document.getElementById qui me trouve toto2 et je voudrais tester le length de caracts !
    Ma fonction ne connaît pas "caracts" donc il faut qu'elle le trouve à partir de toto2 qu'elle connaît


    EDIT :
    Je viens de voir qu'il y a une différence entre document.getElementByTagName() et element.getElementsByTagName
    Comme je suis pas un pro de javascript je les ai confondu, je sais pas comment tu as fait ta recherche mais sache que je cherche avant de poser une question.
    Donc ta critique...

    j'ai trouvé la différence ici :
    https://developer.mozilla.org/fr/doc...mentsByTagName

    Mais je n'y comprend rien comment utiliser cette instruction, c'est facile pour toi qui t'y connais mais pas pour moi alors évite de faire celui qui sait mieux que les autres et que moi je suis un débile mental.

  6. #6
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 209
    Billets dans le blog
    52
    Par défaut
    Non.tagName retourne le nom de la Basile de l'élément que tu manipule.
    Donc,cela vient après le getElementById...

    Merci de te renseigner sur ce qu'on te réponds avant de rejeter en bloc...

    Lien vers la documentation correction

    http://www.w3schools.com/jsref/prop_element_tagname.asp

    Pour ma part, c'est la dernière fois que je viens te donner une réponse.
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  7. #7
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 209
    Par défaut
    Citation Envoyé par progdebutant
    Il n' y a rien qui convienne à mon problème dans ces tutos là :/
    on ne peut pas dire que tu fasses preuve de beaucoup de curiosité pour quelqu'un qui veut apprendre, et si des liens sont indiqués il est respectueux de les suivre ne serait ce que par égard envers celui qui s'est donné la peine de le mettre.

    Citation Envoyé par progdebutant
    Le problème c'est que je ne sais pas quand je dois utiliser input.value ou option.value.
    Il faut utiliser ni l'un ni l'autre mais simplement objet.value de façon plus générique et pour récupérer les "objets" une des réponses est contenu dans un lien d'une des faq !

    Citation Envoyé par progdebutant
    Je ne crois pas que ça réponde à mon problème, tagname c'est pour trouver un objet par son nom
    une fois de plus tu nous montres que tu ne cherches pas à vraiment comprendre.

    Citation Envoyé par progdebutant
    Je viens de voir qu'il y a une différence entre document.getElementByTagName() et element.getElementsByTagName
    c'est bien mais on peut faire différemment en utilisant des méthodes plus "récentes".

    Tiens dans ma grande mansuétude je te livre un petit code de test à partir du HTML suivant
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <form action="action.php">
      <select>
        <option value="1">UN</option>
        <option value="2">DEUX</option>
        <option value="3">TROIS</option>
      </select>
      <p><input value="texte de l'input"></p>
      <p><input type="submit" value="Envoyer"></p>
    </form>
    et le code javascript suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var oForm  = document.querySelector('FORM'),
        oElements = oForm.querySelectorAll('INPUT, SELECT'),
        i, nb = oElements.length;
    for( i=0; i < nb; i +=1){
      console.log( oElements[i].tagName + ' : ' + oElements[i].value);
    }
    Analyse, teste, comprend et renseigne toi, en gros soit curieux, comment crois tu que l'on ait fait

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 30/04/2014, 13h01
  2. Comment lire des valeurs de paramètres dans un fichier ?
    Par timbrochier dans le forum Langage
    Réponses: 3
    Dernier message: 19/08/2010, 12h11
  3. Réponses: 5
    Dernier message: 27/08/2008, 15h29
  4. Comment Lire une valeur à partir d'un fichier XML en C++?
    Par Hamdi Hedhili dans le forum Bibliothèques
    Réponses: 1
    Dernier message: 13/12/2005, 10h09

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