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

JavaScript Discussion :

Garder un texte affiché aprés un submit


Sujet :

JavaScript

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mai 2007
    Messages : 95
    Points : 54
    Points
    54
    Par défaut Garder un texte affiché aprés un submit
    Bonjour,
    J'ai repris l'amélioration du site.
    Lorsque je clique ou je déclique , je veux changer le texte, cela est fait.
    Mais lorsque j'envoie je veux que le texte affiché reste et là çà marche pas.
    Merci pour votre aide.

    Code php : 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
    $aff_page_html.= '
    <script type="text/javascript">
     
    function Change() {
    if ((document.getElementById(\'D_auteur\').checked))
        {
        document.getElementById(\'madiv\').style.display="block";document.getElementById(\'madiv2\').style.display="none";
        }
        else 
            {
            document.getElementById(\'madiv2\').style.display="block"; document.getElementById(\'madiv\').style.display="none" ;
            }
    }
     
     
     
     
    if (Formu.D_auteur.checked == true)
    {
    alert(\'Vous devez cocher la case avant de continuer.\');
    document.getElementById(\'madiv\').style.display="block";document.getElementById(\'madiv2\').style.display="none";
    }else {
    document.getElementById(\'madiv2\').style.display="block"; document.getElementById(\'madiv\').style.display="none" ;
    }
    </script>
    ';
    $aff_page_html.= '
    Droit d\'Auteur:<input type="checkbox" name="D_auteur" value="D_auteur_ok" onclick="Change()"  id="D_auteur"  '.$check_D_auteur_ok.'/> '.$aff_D_auteur_ok.'
    <span id="madiv"  style="display:none">Ce TP sera libre de Tous Droits  d\'Auteur.</span>
    <span id="madiv2" style="display:block" >Vous gardez le droit  d\'auteur.Cliquez et ce TP sera Libre</span>
    ';

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 122
    Points
    44 122
    Par défaut
    Bonjour,
    Mais lorsque j'envoie je veux que le texte affiché reste et là çà marche pas.
    et si tu nous mettais plutôt le code HTML généré cela nous aiderait à y voir plus clair, parce que là les « ça marche pas », « lorsque j'envoie » ne nous parlent pas vraiment.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mai 2007
    Messages : 95
    Points : 54
    Points
    54
    Par défaut
    Désolé et merci
    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
    function Change() {
      if ((document.getElementById('D_auteur').checked))
      {
        document.getElementById('madiv').style.display = 'block';
        document.getElementById('madiv2').style.display = 'none';
      } 
      else
      {
        document.getElementById('madiv2').style.display = 'block';
        document.getElementById('madiv').style.display = 'none';
      }
    }
    if (Formu.D_auteur.checked == true)
    {
      document.getElementById('madiv').style.display = 'block';
      document.getElementById('madiv2').style.display = 'none';
    } else {
      document.getElementById('madiv2').style.display = 'block';
      document.getElementById('madiv').style.display = 'none';
    }
    --------------------------------------------

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <form  enctype="multipart/form-data"   name="Formu"   id="Formu"   action=""  method="post" onSubmit="return validation(this)" >
    <input type="hidden" name="envoi" value="oui"/>
     
    -------------------------
    ------------------------
    &nbsp; &nbsp; Droit d'Auteur:<input type="checkbox" name="D_auteur" value="D_auteur_ok" onclick="Change()"  id="D_auteur"  checked/>  Ce TP sera libre de Tous Droits  d'Auteur.
    <span id="madiv"  style="display:none">Ce TP sera libre de Tous Droits  d'Auteur.</span>
    <span id="madiv2" style="display:block" >Vous gardez le droit  d'auteur.Cliquez et ce TP sera Libre</span>

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 122
    Points
    44 122
    Par défaut
    Ton document étant donc recharger il te faut gérer cela côté serveur fonction du $_POST que tu reçois.

    Un autre approche serait de faire la requête en utilisant la technique Ajax.

    A lire : Comprendre les mécanismes d'AJAX

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mai 2007
    Messages : 95
    Points : 54
    Points
    54
    Par défaut
    Ce que je voulais faire était de:
    Lorsque la page se génère le texte1 apparait (non cliqué). (cela fonctionne)
    Si l'on clique le texte2 apparait
    et si on envoie le texte2 doit apparait après rechargement de la page donc c'est les lignes ci dessous
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if (Formu.D_auteur.checked == true)
    {
    alert(\'Vous devez cocher la case avant de continuer.\');
    document.getElementById(\'madiv\').style.display="block";document.getElementById(\'madiv2\').style.display="none";
    }else {
    document.getElementById(\'madiv2\').style.display="block"; document.getElementById(\'madiv\').style.display="none" ;
    }
    Je ne veux pas alourdir la page avec JQuery ni avec ajax
    avec S_POST, veux tu dire que je récupère avec JS

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mai 2007
    Messages : 95
    Points : 54
    Points
    54
    Par défaut
    J'ai trouvé, je récupère la variable S_post et je mets block et none en variable suivant l'état de S_Post


    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
     
     
    if($_POST['D_auteur']=="D_auteur_ok"){$block="none";$none ="block";}
    if($_POST['D_auteur']!="D_auteur_ok"){ $block="block";$none ="none";}
     
     
     
     
    <script type="text/javascript">
    function Change() {
    if ((document.getElementById('D_auteur').checked))
        {
        document.getElementById('madiv').style.display="'.$block.'";document.getElementById('madiv2').style.display="'.$none.'";
        }
        else 
            { 
            document.getElementById('madiv2').style.display="'.$block.'"; document.getElementById('madiv').style.display="'.$none.'" ;
            }
    }
     
    </script>
    Merci pour l'idée

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

Discussions similaires

  1. [UI] Garder l'image affichée après le select sur selectMenu
    Par Pelote2012 dans le forum jQuery
    Réponses: 3
    Dernier message: 13/01/2015, 10h36
  2. Garder le focus apres un submit
    Par SweetLeaf dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/07/2008, 16h42
  3. garder l'etat d'une liste multiple apres le submit
    Par raul_le_vieux dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/06/2007, 11h27
  4. Réponses: 4
    Dernier message: 22/05/2007, 10h52
  5. Texte qui s'affiche aprés le clique sur un bouton radio
    Par Rekiem dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 12/04/2006, 17h32

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