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 :

[js-php]Desctiver un champs en fonction d'une liste


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    122
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Par d�faut [js-php]Desctiver un champs en fonction d'une liste
    Bonjour,

    J'ai une liste d�roulante. Si l'utilisateur ne trouve pas son choix dans cette liste, il doit l'�crire dans un champs texte.
    Et je voudrais que ce champs texte ne soit accessible que si l'utilisateur n'a rien choisit dans la liste d�roulante.
    Est-ce que quelqu'un pourrait me dire comme faire cela.

    Merci

  2. #2
    R�dacteur

    Avatar de Bovino
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par d�faut
    A priori, un contr�le du style :

    if (monSelect.selectedIndex = -1){monChampText.visibility="visible"}
    else{monChampText.visibility="hidden"}
    Pas de question technique par MP !
    Tout le monde peut participer � developpez.com, vous avez une id�e, contactez-moi !
    Mes formations video2brain : La formation compl�te sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'int�gration de JSFiddle et CodePen sur le forum

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    110
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 110
    Par d�faut
    Salut,

    Donne un id � ton champ de texte comme suit :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
     
    <input type="text" name="nom_du_champ" id="champ_custom" value="" />
    <select name="nom_du_select" onchange="activer_input(this)">
    <option value="">Selectionnez</option>
    <option .....</option>
    </select>
    Cr�e une fonction javascript :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    function activer_input(s){
    var mdv = s.options[s.selectedIndex].value;
    document.getElementById('champ_custom').disabled = (mdv==="") ? false : true; 
    }
    Voila en gros pour le cheminement.

    ++

  4. #4
    Expert �minent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par d�faut
    Un peu trop g�n�reux sur ce coup
    ==>EDIT : d'ailleurs
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    document.getElementById('champ_custom').disabled = (mdv=="");
    devrait �tre suffisant ...

    A+

  5. #5
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    122
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Par d�faut
    Merci pour cos r�ponse.
    J'ai essay� comme suit, mais �a ne marche pas

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
     
    function activer_input(s)
    {
    var mdv = s.options[s.selectedIndex].value;
    document.getElementById('champ_custom').disabled = valeurListe=="");
    }
    Ma liste d�roulante provient d'une base de donn�es ACCESS, J'ai fait comme cela,

    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
    24
    25
    26
    27
    28
    29
    30
     
    <?php
    //connexion à la base
    ....
     
    $query2= odbc_exec($connexion, "SELECT DISTINCT institution FROM equipe;") or die (odbc_error());
     
    print "<b>Institution de provenance : </b>";
    if ($query2) 
    {		
    print '<select name="instit" onChange="activer_input(this)">';
    print '<option value="" selected>' . "" . '</option>'; 
    while ($array = odbc_fetch_array($query2))
    {
    if ($_SESSION['instit'] == $array['institution']) 
    {
    print "<option selected>".$_SESSION['instit']."</option>";
    }
    else
    {
    print '<option value="' . $array['institution'] . '">' . $array['institution']. '</option>'; 
    }		       
    }
    print '</select>';   
    }
     
    ?>	
     
    Si institution pas dans la liste Saisissez :
    <input type="text" name="institu" id="champ_custom" size='20' maxlength='30' value="<? print($_SESSION['institu']);?>">
    Mais si je ne selectionne rien dans la liste, mon champs texte est toujours accessible.

  6. #6
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    122
    D�tails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Par d�faut
    il y a un petit oubli,

    J'ai oubli� ma ValeurListe mais m�me comme �a, �a ne marche pas

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
     
     
    function activer_input(instit)
    		{
    			var mdv = instit.options[instit.selectedIndex].value;
    			document.getElementById('champ_custom').disabled = mdv=="");
    		}

  7. #7
    Expert �minent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par d�faut
    Il manque une parenth�se, l�
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    document.getElementById('champ_custom').disabled = (mdv=="");
    A+

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Cacher un champs en fonction d'une liste d�roulante
    Par mlle.asmae dans le forum G�n�ral JavaScript
    R�ponses: 3
    Dernier message: 10/07/2015, 19h54
  2. [WD15] alimentation d'un champ en fonction d'une liste
    Par fr832 dans le forum WinDev
    R�ponses: 7
    Dernier message: 24/12/2011, 11h20
  3. [AJAX] Remplir des champs en fonction d'une list
    Par efrbeldin dans le forum AJAX
    R�ponses: 7
    Dernier message: 17/01/2011, 17h06
  4. [AC-2007] Actualisation des champs en fonction d'une liste d�roulante
    Par cool17 dans le forum IHM
    R�ponses: 2
    Dernier message: 05/04/2010, 20h31
  5. mise � jour de champs en fonction d'une liste d�roulante
    Par kifouillou dans le forum G�n�ral JavaScript
    R�ponses: 29
    Dernier message: 09/04/2008, 16h37

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