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 :

Boutons radio et listbox


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 21
    Points : 37
    Points
    37
    Par défaut Boutons radio et listbox
    Bonjour,

    j'ai cherché un problème similaire à celui que je rencontre, sans succès. Aussi je vous le soumets.
    Le code est simple, standard et fonctionne parfaitement sous FireFox, mais sous IE rien à 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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
     
    <script type="text/javascript">
    <!--
    function geo1() {
    	document.forms['natfiche'].elements['sportifs_listedept'].disabled = true;
    	document.forms['natfiche'].elements['sportifs_listeregion'].disabled = true;
    }
    function geo2() {
    	document.forms['natfiche'].elements['sportifs_listedept'].disabled = false;
    	document.forms['natfiche'].elements['sportifs_listeregion'].disabled = true;
    }
    function geo3() {
    	document.forms['natfiche'].elements['sportifs_listedept'].disabled = true;
    	document.forms['natfiche'].elements['sportifs_listeregion'].disabled = false;
    }
    window.onload = function() {
    	geo1();
    }
    //-->
    </script>
    <div class="parahead">Choix</div>
    <br/>
    <form id="form1" name="natfiche" method="post" action="recherche" enctype="multipart/form-data">
     <table width="400" border="0" cellspacing="3" cellpadding="2">
     <tr>
    		<td><input type="radio" name="secteur" value="france" onchange="geo1()" checked="checked"></td>
    		<td>Toute la France</td>
    	</tr>
    	<tr>
    		<td><input type="radio" name="secteur" value="dept" onchange="geo2()"></td>
    		<td>Département</td>
    	</tr>
    	<tr>
    		<td>&nbsp;</td>
    		<td>
    			<select name="sportifs_listedept" id="sportifs_listedept">
    				<option label="Départements">Départements</option>
         		</select>
        	</td>
    	<tr>
    		<td><input type="radio" name="secteur" value="reg" onchange="geo3()" ></td>
    		<td>Région</td>
    	</tr>
    	<tr>
    		<td>&nbsp;</td>
    		<td>
    			<select name="sportifs_listeregion" id="sportifs_listeregion" >
    				<option label="Régions">Régions</option>
         		</select>
    		</td>
    	</tr>
    </table>
    Sous IE, si le boutonradio du département est choisi, la liste des départements semble toujours en 'disable', ce qui n'est pas le cas il suffit de cliquer dessus (ou n'importe où sur la page) pour voir qu'elle est bien active.

    Il semble sous IE y avoir une sorte de décalage entre la gestions des évènements utilisateur et l'affichage.
    Firefox lui se comporte comme prévu.

    Cette anomalie est sur un site qui est en production et constitue un réel problème.

    Merci de votre aide

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 211
    Points : 196
    Points
    196
    Par défaut
    Essaie ca peut-etre:

    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
    31
    32
    33
     
    <form id="form1" name="natfiche" method="post" action="recherche" enctype="multipart/form-data">
     <table width="400" border="0" cellspacing="3" cellpadding="2">
     <tr>
    		<td><input type="radio" name="secteur" value="france" onclick="if(this.checked){document.getElementById('sportifs_listedept').disabled='disabled';document.getElementById('sportifs_listeregion').disabled='disabled';}" checked="checked" /></td>
    		<td>Toute la France</td>
    	</tr>
    	<tr>
    		<td><input type="radio" name="secteur" value="dept" onclick="if(this.checked){document.getElementById('sportifs_listedept').disabled=null;document.getElementById('sportifs_listeregion').disabled='disabled';}" /></td>
    		<td>Département</td>
    	</tr>
    	<tr>
    		<td>&nbsp;</td>
    		<td>
    			<select name="sportifs_listedept" id="sportifs_listedept" disabled="disabled">
    				<option label="Départements">Départements</option>
         		</select>
        	</td>
    		</tr>
    	<tr>
    		<td><input type="radio" name="secteur" value="reg" onclick="if(this.checked){document.getElementById('sportifs_listedept').disabled='disabled';document.getElementById('sportifs_listeregion').disabled=null;}" /></td>
    		<td>Région</td>
    	</tr>
    	<tr>
    		<td>&nbsp;</td>
    		<td>
    			<select name="sportifs_listeregion" id="sportifs_listeregion" disabled="disabled">
    				<option label="Régions">Régions</option>
         		</select>
    		</td>
    	</tr>
    </table>
    </form>

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 21
    Points : 37
    Points
    37
    Par défaut
    Bravo et merci beaucoup pour ton aide !

    ça ne m'explique pas pourquoi le code précédent passait bien sous Firefox, mais ça règle le problème.

    Encore merci

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 211
    Points : 196
    Points
    196
    Par défaut
    Je crois qu'IE ne comprend pas bien les valeurs false et true pour disabled mais j'ai pas vraiment eu le temps de tester...

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 21
    Points : 37
    Points
    37
    Par défaut
    En fait en regardant ton code et le mien à la recherche du bug perdu, j'ai repris mon code qui ne fonctionnait pas et j'ai juste remplacé les 'onchange' par 'onclick'.
    C'était à priori la seule vrai différence, et bingo, tout fonctionne parfaitement !

    Pour Firefox, un onchange sur un radiobutton vaut un onclick, mais pas pour IE qui ne traite pas l'évènement de la même façon, d'où cette impression d'un évènement reste en attente dans la file des message et du décalage visuel.

    En tout cas encore merci d'avoir mis le doigt sur le problème

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

Discussions similaires

  1. recupérer la valeur d'un bouton radio
    Par ericmart dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 19/05/2008, 15h42
  2. Tri Alphabétique Listbox avec Boutons Radios
    Par ljuboja78 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 01/05/2008, 09h55
  3. apparition d'un chanp text au click d'un bouton radio
    Par Flobel dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 09/11/2004, 09h34
  4. [CR]liste de boutons radio
    Par inesfonfon dans le forum SAP Crystal Reports
    Réponses: 5
    Dernier message: 16/09/2004, 09h04
  5. Problème de boutons radio
    Par BRAUKRIS dans le forum Composants
    Réponses: 3
    Dernier message: 03/06/2004, 02h41

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