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

Servlets/JSP Java Discussion :

Edition instantanné d'un champ texte.


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    123
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 123
    Par défaut Edition instantanné d'un champ texte.
    Bonjour,
    Je souhaite savoir s'il y'a la possiblité de l'edition d'un texte statique dans une page JSP intantanément en une même page .c'est à dire que l'utilisateur clique sur un boutton "editer" -par exemple- le champs qui été statique devient un "textField" dans la même page.Ensuite, l'utilisateur saisi ses modification puis il valide.
    Je pense que pour ses cas de figure L'Ajax est le plus idéale mes j'ai pas une grande conaissance a ce Framework.
    Merci.

  2. #2
    Membre éclairé
    Avatar de CPI_en_mousse
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2006
    Messages
    332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 332
    Par défaut
    Salut,

    tu peux aussi te servir de Javascript,

    lors d'un evenement sur un bouton de type onclick(), ca appel une fonction Js qui change la valeur de readonly a false.

    --------

    Je pense que ton post n'est pas dans le bon forum, tu aurais du aller dans le forum html ou Js.

  3. #3
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    A priori, javascipt devrait suffire.
    Je n'utiliserais pas (pour ma part) l'attribut readonly ou disabled d'un champ <textarea> mais plutôt un <div id='c1v'> avec le texte brut (pour l'affichage) et un <textarea id='c1e'> pour la mise à jour.
    Ensuite, via un bouton et javascript, tu affiches l'un des 2 par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    // Passage en mise à jour
    document.getElementById("c1v").style.display="none";
    document.getElementById("c1e").style.display="block";
     
    // Passage en visu
    document.getElementById("c1v").style.display="block";
    document.getElementById("c1e").style.display="none";
    Généralement, on veut voir tout le texte en visu. Avec le textarea, il y aura les scrollbars pour un texte long, ou alors une grosse zone avec 2 lignes...

    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Encore plus simple : à l'aide de JavaScript !

    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
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Document sans nom</title>
    <script language="javascript">
    function updateMode(){
        document.getElementById('valId').style.display='none';
        document.getElementById('varId').style.display='';
     
        document.getElementById('varId').value = document.getElementById('valId').innerHTML;
     
        document.getElementById('modifId').style.display='none';
        document.getElementById('submitId').style.display='';
    }
    </script>
    </head>
     
    <body>
    <table>
      <tr>
        <td>Nom</td>
        <td><div id="valId">midoENSI</div>
        <input id="varId" type="text" name="textfield"  style="display:none"/></td>
        <td><a href="#" id="modifId" onclick="updateMode()">modifier</a>
     
          <input id="submitId" type="submit" name="Submit" value="Appliquer"  style="display:none"/>
        </td>
      </tr>
    </table>
    </body>
    </html>
    Ce qui précède est un exemple complet (du simple HTML + JavaScript). Tu peux l'essayer tel quel pour comprendre le principe !

    [EDIT]
    Je viens de me rendre compte que OButterlin m'a devancé !

  5. #5
    Membre éclairé
    Avatar de CPI_en_mousse
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2006
    Messages
    332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 332
    Par défaut
    pourquoi tu n'utiliserai pas les attribut readonly ou disable??

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    123
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 123
    Par défaut
    Bonjour,
    Merci à vous tous,
    Juste je pose la question suivante: est ce que l'utilisation de ce javaScript est toujours valable pour le <html:text> et <html:submit> c'est à dire pour l' utlisation de Struts .
    Je pose cette question parceque j'ai besoin de faire l'enregistrement de mes modifications dans une base de donnée.
    Merci
    A+

  7. #7
    Membre émérite Avatar de remika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    806
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 806
    Par défaut
    Oui, ces balises cachent du code html (tu peux afficher la source de tes pages générées pour voir), donc pas de problème pour le Javascript.

  8. #8
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Oui, absolument !
    Il y'a juste un petit hic ! avec les tags de Struts, on ne peut pas spécifier d'identifiant au sens de HTML, or en utilise cet identifiant dans la fonction JavaScript.


    La solution est la suivante :
    dans la fonction JavaScript, remplacer les
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('unId')
    par des
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementsByName('unNom')[0]
    et ce uniquement pour les tags de struts.

    J'explique :
    Dans mon exemple précédent je mettais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input id="submitId" type="submit" name="Submit" value="Appliquer"  style="display:none"/>
    ce qui devient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <html:text property="XXXX" style="..." />
    et dans la fonction javaScript, j'ai mis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('varId').style.display='';
    ce qui devient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    document.getElementsByName('XXXX')[0].style.display='';
    etc.
    Voili voilou !

  9. #9
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par CPI_en_mousse
    pourquoi tu n'utiliserai pas les attribut readonly ou disable??
    J'avais mis l'explication en dessous
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Généralement, on veut voir tout le texte en visu. Avec le textarea, il y aura les scrollbars pour un texte long, ou alors une grosse zone avec 2 lignes...
    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    123
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 123
    Par défaut
    ok merci à vous tous. Mon problème a été resolu.

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

Discussions similaires

  1. [debutant] Creation de TextField - champ texte
    Par wkd dans le forum Composants
    Réponses: 3
    Dernier message: 04/06/2004, 14h00
  2. [struts]Champ texte indéxé
    Par GreenJay dans le forum Struts 1
    Réponses: 2
    Dernier message: 02/06/2004, 16h47
  3. Que privilégier : %like% dans champs texte, ou plain text ?
    Par Dimitri01 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 31/01/2004, 11h45
  4. [MSDE 2000] Récup champ text depuis proc stockée
    Par Air'V dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 14/12/2003, 19h47
  5. [Pb : champ Text = pas de valeur par defaut ?]
    Par mat_dum dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 18/08/2003, 12h57

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