Problème sous FF, l'etat "disabled" ne veut pas partir

Eléphanteau du PHP | 39 Messages

01 juin 2008, 21:14

Bonjour à tous,

Je souhaite qu'au clique sur le bouton radio que l'état disabled de ma liste déroulante se désactive,
cela fonctionne très bien sous IE, mais FF ne veut rien savoir.

Voici ma fonction javascript:

Code : Tout sélectionner

function able(radio){ ... if (radio[1].checked) { document.getElementById('j1').disabled=false; } ... }
le code html:

Code : Tout sélectionner

... <input type="radio" name="choice" value="1" onClick="able(choice)" /> <select name="j1" disabled="disabled" >... ...

Merci par avance pour vos solutions

:wink:
C'est en forgeant qu'on se forge

Mammouth du PHP | 19672 Messages

01 juin 2008, 21:59

Il manque des attributs id dans tes balises de formulaire.

Essaye ceci :

Code : Tout sélectionner

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" xml:lang="fr" /> <title>Activer ou désactiver un élément</title> <script type="text/javascript">/* <![CDATA[ */ function able(radio) { if (radio.checked == true) { document.forms.monForm.elements.j1.disabled = null; } } function disable(radio) { if (radio.checked == true) { document.forms.monForm.elements.j1.value = -1; document.forms.monForm.elements.j1.disabled = true; } } /* ]]> */</script> </head> <body> <form id="monForm"> <p> <label for="choice1">Activer la liste : </label><input type="radio" name="choice" id="choice1" value="1" onclick="able(this)" /> <label for="choice2">Désctiver la liste : </label><input type="radio" name="choice" id="choice2" value="1" onclick="disable(this)" /> </p> <p> <select id="j1" disabled="disabled"> <option value="-1">&nbsp;</option> <option value="1">Un premier choix</option> <option value="2">Un second choix</option> <option value="3">Un troisième choix</option> </select> </p> </form> </body> </html>
Tu noteras que j'ai ajouté quelques éléments en particulier dans la fonction qui désactive la liste pour remettre la sélection à -1. ça fait partie des nombreuses possibilités qu'on peut utiliser. Mais ça veut dire que tu peux aussi définir un choix par défaut différent de l'option vide dans la fonction qui active la liste.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphanteau du PHP | 39 Messages

01 juin 2008, 22:54

Merci à toi cyrano,
et effectivement c'été les "id" manquant qui été la source du problème sous FF...
merci pour le complément ça me sera très utile je pense :merci:
C'est en forgeant qu'on se forge

Mammouth du PHP | 19672 Messages

02 juin 2008, 06:53

N'oublie pas le [Résolu] ;)
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: