Partage
  • Partager sur Facebook
  • Partager sur Twitter

Sauver la zone de textarea

Javascript

Sujet résolu
    11 octobre 2006 à 23:27:10

    Bonsoir,

    Voici le code que j'ai trouvé pour sauver la zone de textarea lorsque l'utilisateur change de page:

    <script type="text/javascript">
    function cookieSave(name, text) {
      document.cookie = name + "=" + escape(text);
      }

    function cookieLoad(name) {
      var search = name + "=";
      if (document.cookie.length > 0) {
        offset = document.cookie.indexOf(search);
        if (offset != -1) {
          offset += search.length;
          end = document.cookie.indexOf(";", offset);
          if (end == -1) {
            end = document.cookie.length;
            }
          return unescape(document.cookie.substring(offset, end));
          }
        }


           
      }
    </script>

    <form id="editForm">
      <textarea id="editArea" onkeyup="cookieSave('editArea',this.value);"></textarea>
    </form>

    <script type="text/javascript">
      document.getElementById('editArea').value = cookieLoad('editArea');
    </script>


    Le problème est que, autant en PHP j'ai aucun problème, mais en JS je sais rien faire. Lorsque il n'y pas encore de cookie pret ( :honte: le jeu de mots :p ), au premier chargement de la page, il y a "undefined" marqué dans le textarea ?
    Est-ce que quelqu'un pourrai arrangé le code pour qu'il n'est rien au premier chargement de page?
    merci d'avance
    Séb
    • Partager sur Facebook
    • Partager sur Twitter

    << On n'apprend bien qu'à force de se tromper. >>

      11 octobre 2006 à 23:56:33

      tu as essayé de mettre un texte nul au lancement du textarea ? un truc du genre "". Ca pourrait l'initialiser comme ca
      • Partager sur Facebook
      • Partager sur Twitter
        12 octobre 2006 à 13:46:42

        Tu veux dire entre <textarea> ICI </textarea> ?
        Dans ce cas je viens d'essayer mais cela ne change rien !
        • Partager sur Facebook
        • Partager sur Twitter

        << On n'apprend bien qu'à force de se tromper. >>

          12 octobre 2006 à 17:28:40


          var txt =        cookieLoad('editArea');
                  if( typeof txt != 'undefined')
                          document.getElementById('editArea').value = txt;

          Mais en général, on écrit plus rapidement:
          if( txt )
            //blabla
          • Partager sur Facebook
          • Partager sur Twitter
            13 octobre 2006 à 1:40:48

            Merci Boo2M0rs0 !
            Je met le code juste en entier pour les suivants qui chercheront :

            <script type="text/javascript">
            function cookieSave(name, text) {
              document.cookie = name + "=" + escape(text);
              }

            function cookieLoad(name) {
              var search = name + "=";
              if (document.cookie.length > 0) {
                offset = document.cookie.indexOf(search);
                if (offset != -1) {
                  offset += search.length;
                  end = document.cookie.indexOf(";", offset);
                  if (end == -1) {
                    end = document.cookie.length;
                    }
                  return unescape(document.cookie.substring(offset, end));
                  }
                }


                   
              }
            </script>

            <form>
              <textarea id="editArea" onkeyup="cookieSave('editArea',this.value);"></textarea>
            </form>

            <script type="text/javascript">
            var txt =        cookieLoad('editArea');
                    if( typeof txt != 'undefined')
                            document.getElementById('editArea').value = txt;
            </script>

            editArea est la variable à modifier si on a plusieurs zone de texte dans la page
            • Partager sur Facebook
            • Partager sur Twitter

            << On n'apprend bien qu'à force de se tromper. >>

            Sauver la zone de textarea

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown