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

JSF Java Discussion :

Un readonly dynamique


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 136
    Par défaut Un readonly dynamique
    Bonjour,
    j'ai un inputText que je veux mettre en read/write (readonly=false) si je clic sur un Checkbox et on readonly si je declic le Checkbox, j'ai essayé de faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <h:selectBooleanCheckbox  id="check1" onclick="a1.readonly='false'" >
    sachant que a1 est le id de l'inpuText, mais sa donne rien, quelqu'un à une idée svp.
    merci.

  2. #2
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Bonjour,

    Sur le principe, c'est bon. Mais en JSF, les ID d'un élément sont préfixés par l'ID du formulaire.
    Par exemple, le code suivant :

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <h:form id="myForm">
        <h:inputText id="a1" .../>
    </h:form>

    va générer le code HTML suivant pour l'input text:

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    <input id="myForm:a1" .../>

    Donc l'ID n'est pas a1, mais myForm:a1 (à adapter en fonction de l'ID de ton formulaire, bien sûr).

    Ensuite, écrire juste a1.readonly ne veut pas dire grand chose. Il faut écrire document.getElementById('myForm:a1').readonly (ce code peut être encore simplifié si tu utilises Prototype ou jQuery par ex.).
    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

  3. #3
    Membre averti
    Inscrit en
    Octobre 2002
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 43
    Par défaut
    tu peux même pousser la chose jusqu'à te mettre un javascript dédié si tu as plus d'un champ à désactiver!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <script>
    function makeReadOnly()
    {
    var obj = document.getElementById("myForm:a1");
    obj.readonly='false';
    var obj2... //etc etc
    }
    </script>
    Puis, appeler ce javascript via
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <h:selectBooleanCheckbox  id="check1" onclick="makeReadOnly()" >

  4. #4
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 136
    Par défaut
    Bonjour,
    Merci beaucoup pour vos reponses, j'essayerai ce que vous m'avez envoyé.

Discussions similaires

  1. Textbox Dynamique en ReadOnly
    Par DeveloppeurWeb dans le forum ASP.NET
    Réponses: 2
    Dernier message: 24/11/2010, 12h38
  2. comment creer un alias dynamique avec BDE et ODBC
    Par david33 dans le forum C++Builder
    Réponses: 2
    Dernier message: 12/07/2002, 11h50
  3. Réponses: 4
    Dernier message: 13/05/2002, 16h43
  4. repertoire temp dynamique
    Par killpilot dans le forum C
    Réponses: 2
    Dernier message: 26/04/2002, 16h19

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