Envoyé par : Sergio
Date : 05/12/2009 11:22
Bonjour à tous,
Ayant fait une recherche sur ce forum, j'ai trouvé cet ancien topic, mais dont la réponse n'est pas satisfaisante.
# Héritage de disabled=true
golgoth14
Date : 08 February 2006, 15:58
Comment fait-on pour que tous les éléments d'une box soient désactivés si l'on désactive la box.
Le but est de ne pas désactiver les éléments un à un mais que leur conteneur (la box) le fasse.
J'ai donc essayé ceci :
<groupbox id="id_gb"> <caption label=" Ma groupbox "/> <hbox> <label control="id1" value="Controle 1"/> <textbox id="id1"/> <label control="id2" value="Controle 2"/> <textbox id="id2"/> <button label="Désactiver" oncommand="desactiver('id_gb');" /> </hbox> </groupbox>
avec:
function desactiver(id) { var children = document.getElementById(id).childNodes; for (var i = 0; i < children.length; i++) { children[i].setAttribute("disabled","true"); } }
Après avoir cliqué sur le bouton les deux contrôles sont toujours actifs. Aucune erreur signalée...
J'ai essayé aussi la méthode setAttributeNode() mais je n'arrive pas à la faire fonctionner.
Merci à tous ceux qui aurait une piste.
Envoyé par : Lapinator
Date : 08/12/2009 14:32
et avec le code suivant ?
function desactiver(id) { var children = document.getElementById(id).childNodes; for (var i = 0; i < children.length; i++) { children[i].disabled=true; } }
Pour plus d'information voir : https://developer.mozilla.org/en/XUL/Textbox#p-disabled
Envoyé par : Sergio
Date : 08/12/2009 16:00
Merci pour votre réponse.
Votre proposition de code est tout aussi inefficace... On peut continuer de saisir dans chaque textbox
Effectivement le code donné sur : https://developer.mozilla.org/en/XUL%3aA(..) fonctionne tout à fait logiquement.
Dans mon cas, j'ai essayé à la place d'utiliser les codes suivants :
children[i].setAttribute("style","visibility:hidden;");
ou
children[i].setAttribute("hidden","true");
les deux fonctionnent correctement.
Je ne comprends pas ce qui cloche dans le cas que je cherche.
Si d'autres ont des pistes... Merci !
Cordialement.
Envoyé par : Sergio
Date : 08/12/2009 16:13
Bien sûr il a fallu que je poste pour trouver ce qui clochait !
Aussi je me réponds à moi-même.
C'est tout simplement le <hbox> </hbox> qui bloque :
<groupbox id="id_gb"> <caption label=" Ma groupbox "/> <label control="id1" value="Controle 1"/> <textbox id="id1"/> <label control="id2" value="Controle 2"/> <textbox id="id2"/> <button label="Désactiver" oncommand="desactiver('id_gb');" /> </groupbox>
Bien sûr dans ce cas il désactive les 5 enfants qu'il trouve, ce qui est logique.
Il n'est plus possible de poster des messages dans ce forum.
Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.
Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™
sont des marques de la fondation Mozilla.