Partage
  • Partager sur Facebook
  • Partager sur Twitter

help: empêcher de perdre contenu iframe

ajax, sql, cookie, GET, bidouillage ?

    20 août 2010 à 1:25:23

    je ne m'entends pas très bien avec l'iframe;
    ce soir mon problème insoluble est le suivant:
    j'ai une iframe dans lequel le mode de saisie de texte est activé et donc je peux saisir du texte.

    j'ai aussi une fonction qui permet d'ajouter un texte pré-formaté dans cette iframe.
    Ce texte je le sélectionne par un select et l'information est traitée par méthode GET donc la page est rechargée et donc je perds le contenu qu'il y a déjà dans mon iframe :
    <select name='listcons' onchange='document.location ="#" + this.options[this.selectedIndex].value' ><option value='blabla'>blabla
    


    Alors j'ai vaguement lu sur des forums que AJAX permet de charger que des parties de pages qui sont utiles à charger, est ce que ça peut m'être utile ici ?

    Sinon j'ai pensé faire un bidouillage dans ma fonction select : c'est d'enregistrer le contenu de mon iframe avant de la recharger.

    Dans ce cas, quelle est la méthode la plus simple ? :-°

    merci beaucoup d'avance
    • Partager sur Facebook
    • Partager sur Twitter
      20 août 2010 à 8:01:00

      Salut,
      Plutôt que de passer par une requête, pourquoi tu n'insert pas directement ton texte dans on iframe (comme la zForm du sdz) ?

      Un truc dans ce style :

      window.taFrame.document.getElementById('id').innerHTML += 'text préformaté';
      
      • Partager sur Facebook
      • Partager sur Twitter
        20 août 2010 à 10:09:03

        Pourfaire cross-browser, c'est un chouillat plus compliqué.
        • Partager sur Facebook
        • Partager sur Twitter
          20 août 2010 à 12:47:39

          LCaba, c'est justement la méthode que j'utilise pour ajoute mon texte :
          chaine = window.textEditor.document.body.innerHTML;
          obs= document.getElementById('MADIV').innerHTML;
          
          window.textEditor.document.body.innerHTML='';
          window.textEditor.document.body.innerHTML= chaine + obs;
          


          le problème ne vient pas de là !!

          le problème c'est que quand je chargé mon texte pré formaté sans une div ( pour un pré-visionnage), toute la page est rechargée y compris l'iframe et donc son contenu est effacé !!!! voici le code qui permet de charger le texte: je le sélectionne dans un select, ce select va m'envoyer la réponse par méthode GET et c'est interprété directement par du php dans la page :

          <select name='listcons' onchange='document.location ="?param1=" + this.options[this.selectedIndex].value' ><option value=''>
          


          ...
          $param=$_GET['param1'] ;    
          // là le scripte php fait la correspondance entre mon paramètre sélectionné et mon texte 'montexte')
          echo ("<div id='obs'>");
          echo ($montexte);
          echo ("</div id='obs'>");
          



          et après le texte est ajouté dans l'iframe par la fonction innerHTML ci-dessus mentionnée.



          Suis-je assez clair ?


          • Partager sur Facebook
          • Partager sur Twitter
            20 août 2010 à 13:39:54

            Forcément avec un document.location tu recharge la page... y a pas 36 solutions : ajax. Si t'y connais rien, commence par lire les deux premiers chapitres du tuto sur li sdz : http://www.siteduzero.com/tutoriel-3-4 [...] vascript.html
            • Partager sur Facebook
            • Partager sur Twitter

            help: empêcher de perdre contenu iframe

            × 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