Salut,
J'ai un selectOneListbox avec 2 valeurs, 0 et 1, et un inputText.
Comment est-ce-qu'on peut diriger que l'inputText devient saissisable seulement si la valeur choisie dans le selectOneListbox est 0?
Merci pour votre aide,
Cristine
Salut,
J'ai un selectOneListbox avec 2 valeurs, 0 et 1, et un inputText.
Comment est-ce-qu'on peut diriger que l'inputText devient saissisable seulement si la valeur choisie dans le selectOneListbox est 0?
Merci pour votre aide,
Cristine
Bonjour,
Voila ce que je ferais (je suis pas un pro)
JSP
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <h:selectOneMenu id="menu1" value="#{managedBean.selectedValue}"> <t:selectItems value="#{refundController.Values}" var="value" itemLabel="#{value}" itemValue="#{value}" /> </h:selectOneMenu>ManagedBean
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2<h:inputText disabled="#{managedBean.selectedValue}">
Enfin en gros
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2private Boolean selectedValue;
![]()
Le problème de cette solution, c'est qu'elle exige un aller-retour serveur (en Ajax ou non).
Personnellement, je me ferais plutôt ça en Javascript:
Code Javascript (c'est de l'approximatif, donc à corriger éventuellement) :
En JSP/JSF:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 function pouet(field) { var myInput = document.getElementById("myForm:myInput"); var selected = field.selectedIndex; if (selected != -1) { myInput.disabled = (selected.options[selected].value != '1'); } else { myInput.disabled = true; } }
Beaucoup plus simple...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <h:form id="myForm"> ... <h:selectOneMenu id="myList" onchange="pouet(this);" ...> ... </h:selectOneMenu> ... <h:inputText id="myInput" .../> ...
Nous sommes tous semblables, alors acceptons nos différences !
--------------------------------------------------------------
Liens : Blog | Page DVP | Twitter
Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
Critiques : Apache Maven
Petite digression sur le sujet, mais est-ce que vous êtes confronté aux problèmes d'accessibilité?
Nous on nous demande un minimum d'accessibilité, donc javascript (et AJAX) a éviter.
Je ne comprend pas bien ton propos...
Qu'entends tu par "problème d'accessibilité" ?
Il est malheureusement des choses qu'il est difficile, voire parfois impossible à faire en se passant de Javascript (et / ou Ajax).
Dans le cas présent, je ne vois pas trop comment, simplement et sans lourdeur pour l'utilisateur, on peut procéder...
Une solution simple, mais lourde, serait de forcer l'utilisateur à envoyer son formulaire au serveur, qui alors, retournerait la nouvelle page, avec le input text modifiable ou non selon le choix de l'utilisateur dans la combobox... Mais c'est vraiment lourd je trouve.
Nous sommes tous semblables, alors acceptons nos différences !
--------------------------------------------------------------
Liens : Blog | Page DVP | Twitter
Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
Critiques : Apache Maven
Je parle des problèmes d'accessibilité au Web pour les personnes handicapées. Si je ne me trompe pas, les sites doivent pouvoir être utilisables avec le javascript désactivé. Mais bon c'est un autre sujet... Et effectivement, ta solution et plus légère![]()
Je réfléchissais à ce que tu as écrit. Sousentends-tu par accessibilité le fait de toucher un maximum de personnes, donc de navigateurs particuliers, et donc, de toucher également les personnes ayant désactivé le Javascript sur leur navigateur ?
Si c'est bien cela, alors je comprends mieux ton interrogation. Cependant, je me demande si c'est raisonnable d'alourdir ton site, ou de l'alléger en fonctionnalités, tout cela pour prendre en compte un faible pourcentage des navigateurs ?
Edit : D'après ta dernière réponse, c'est effectivement bien ce dont tu parlais![]()
Nous sommes tous semblables, alors acceptons nos différences !
--------------------------------------------------------------
Liens : Blog | Page DVP | Twitter
Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
Critiques : Apache Maven
Il est vrai que l'on ne prend que trop rarement en considération l'utilisation de son site pour les personnes handicapées...
Mon expérience en la matière est très limitée (j'avais un admin réseau à ma fac qui était non voyant, et heureusement, il arrivait à se débrouiller - fort bien d'ailleurs - grâce à un Linux, tout en mode texte et un clavier avec une lecture en braille). Cependant, je ne vois pas vraiment de contre-indication entre l'accessibilité et le Javascript, si ? Moi j'aurais plutôt vu des efforts à faire sur l'aspect visuel du site, la possibilité de le rendre visible avec des fontes très importantes, etc...
Maintenant, c'est clair que ça dépend aussi pas mal de l'utilisation du JS que l'on en fait.
Mais tout ceci est effectivement un autre débat !
Nous sommes tous semblables, alors acceptons nos différences !
--------------------------------------------------------------
Liens : Blog | Page DVP | Twitter
Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
Critiques : Apache Maven
Je boss pour l'éducation nationaleet on nous demande de rendre certains de nos sites accessibles...
Voila un lien
http://fr.wikipedia.org/wiki/Accessibilit%C3%A9_du_Web
Une des règles est :
réaliser un site web utilisable sans images ni style CSS ni JavaScript.
Je clôture la dessus
P.S : si tu as 5min jettes un oeil a mon autre problèmeavec le selectBooleanCheckbox
Bonne journée
Merci pour ces précisions robbiano78.
CristinaB, on attend de tes nouvelles pour savoir si le sujet est résolu![]()
Nous sommes tous semblables, alors acceptons nos différences !
--------------------------------------------------------------
Liens : Blog | Page DVP | Twitter
Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
Critiques : Apache Maven
Salut,
Merci a tous pour vos idees.
J'ai commence avec la propositiion de robbiano78, car c'etait plus proche de mon projet et j'ai finit par introduire une variable boolean isSelected (avec les getter et setter) dans mon Bean et une methode valueChanged (applellee par l'evenement du changement de la valeur), qui verifie la valeur selectee dans le selectOneListbox et ensuite met le isSelected a true ou false, selon le cas.
Ensuite, pour l'inputText j'ai mis:
Code : Sélectionner tout - Visualiser dans une fenêtre à part <h:selectOneListbox id="id" valueChangeListener="#{myBean.valueChanged}" onChange="submit();" immediate="true" value="#{myBean.value}">
disabled="#{myBean.isSelected}"
Le code de la methode valueChanged:
voila,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 public void valueChanged(ValueChangeEvent event) { HtmlSelectOneListbox element = (HtmlSelectOneListbox) event.getComponent(); String label = (String) element.getValue(); if ("valeur_pour_disabled".equals(label)) { setIsSelected(true); } else { setIsSelected(false); } }
a propos, pour un changement de cas, si on veut mettre un selectOneListbox disabled selon la valeur introduite dans l'inputText, c'est facile a utiliser :
Merci beaucoup,
Code : Sélectionner tout - Visualiser dans une fenêtre à part <a:support event="onkeyup" reRender="selectOneList,inputText"/>
Bonne chance.
Cristine.
Edit romaintaz:![]()
Partager