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 :

desactiver des input d'1 form, selon les radios


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 49
    Points : 24
    Points
    24
    Par défaut desactiver des input d'1 form, selon les radios
    bonjour
    a partir d'un formulaire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     <label><input type="radio" id="type_cpt" name="type_cpt" value="cpt_text" checked="checked" />Compteur avec texte uniquement </label>
                <label><input type="radio" id="type_cpt" name="type_cpt" value="cpt_img"  />Compteur avec images </label><br />
    je voudrais desactiver les autres input qui viennent selon si le visiteur clique sur le radio de valeur cpt_text ou cpt_img ...

    comment faire!
    merci de votre aide

  2. #2
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Tes inputs sont sur la même page ou pas ? Sinon il faudrait soumettre le formulaire et récupérer les infos. S'ils sont sur la même page, il suffira d'utiliser l'évènement onchange ou oncheck

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 49
    Points : 24
    Points
    24
    Par défaut
    oui oui, tout est sur la même page.

  4. #4
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Dans ce cas voici un exemple :
    Le code HTML
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="input" id="test" /><input type="checkbox" onclick="visible('test')"/>
    Et le javascript :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function visible(id)
    {
      document.getElementById(id).disabled=document.getElementById(id).disabled==true?false:true;
    }
    Testé et approuvé par FF et IE

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 49
    Points : 24
    Points
    24
    Par défaut
    mon problème, et celui que je rencontre dans tous les scripts en javascript, c'est que le script est fait que pour cacher 1 seul chanp ...

    hors moi par exemple, si le bouton radio "texte" est coché, je voudrais cacher 3-4 champs ...

    Je voudrais en fait les rendre disabled, et non les cacher

    merci pour vos combines

  6. #6
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Comme ça à froid je t'aurai proposé un div qui cacherai tout mais tu n'en veux pas. rendre disabled un div ca fonctionne pas. Donc pourquoi pas faire une fonction qui prend en paramètre un tableau

    Comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="input" id="test"  /><input type="input" id="test2" /></div><input type="checkbox" onClick="visible(Array('test','test2'))"/>
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function visible(id)
    {
      for(i=0;i<id.length;i++)
      document.getElementById(id[i]).disabled=document.getElementById(id[i]).disabled==true?false:true;
    }

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 49
    Points : 24
    Points
    24
    Par défaut
    super cool
    merci de ton coup de pouce, çà marche nickel, aussi bien sous firefox que sous IE!
    seul truc c'est que sous IE, ce qui est disabled n'est pas en fond gris, comme sous firefox

  8. #8
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Ben là ce sont les différences entre IE et FF...Et ca vient pas du code proprement dit, c'est l'effet de style IE.

    Si tu veux vraiment harmoniser tout ca tente avec le CSS

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/11/2010, 13h12
  2. Réponses: 3
    Dernier message: 09/09/2009, 14h00
  3. Réponses: 12
    Dernier message: 06/08/2007, 07h46
  4. [DOM]ordre des appels DOM et visualisation selon les navigateurs
    Par Herode dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 06/01/2007, 11h28
  5. Réponses: 4
    Dernier message: 09/08/2006, 11h05

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