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 :

Iframe / onBlur / récupération de données


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Webmaster
    Inscrit en
    Mars 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2007
    Messages : 39
    Par défaut Iframe / onBlur / récupération de données
    Voila ce que je souhaiterais réaliser, j'ai une page (article.php) dans laquelle j'ai inséré une iframe(txt_arti.php et son id='frame_arti' ).

    Dans mon iframe j'ai un <input file ...> et un <textarea>.

    Ce que je voudrais, c'est que lorsque la personne quitte la zone du textarea (fonction onBlur si je ne m'abuse) que la valeur la valeur de mon textarera soit transmise a ma page principale(à savoir article.php)

    Voici ce que j'ai déja réalisé:

    Sur la page articles.php
    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
     
    <head>
    <script language="JavaScript" type="text/JavaScript">
    <!--
    function getIframeContent()
    {
    	IE  = window.ActiveXObject ? true : false;
    	MOZ = window.sidebar       ? true : false;
    	if(IE)  
    	{
    	 	edoc = window.frames['frame_arti'].document;
    		document.getElementById('arti_textarea_con').value = edoc.body.innerHTML;
    	}
    	if(MOZ) 
    	{	
    		edoc = document.getElementById('frame_arti').contentDocument;
    		document.getElementById('arti_textarea_con').value = document.getElementById("frame_arti").contentDocument.body.innerHTML;alert("teste");
    	}
    }
    //-->
    </script>
    </head>
    et au niveau de l'appel de ma page d'iframe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <iframe   src="inclu/txt_arti.php" width="700"  height="400" name="txt_arti" id="frame_arti"frameborder="1"></iframe>
    enfin dans la page txt_arti.php:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <textarea id="arti_textarea_con"  onBlur="alert('cest ici que je dois faire l'appel la fonction getIframeContent de ma page article.php ???? ');" style="border: 0px; width: 650px;height: 300px;"></textarea>
    > Donc, par rapport à mon code, l'évenement onBlur n'est pas détecté ( a cause du fait que le textarea soit fait avec tinyMCE ) mais si j'utilsais pas tinyMCE, le onBlur fonctionne.

    > Je ne sais pas trop comment récupérer la valeur dans ma fonction getIframeContent , j'ai fait de multiples test et j'arrive pas a afficher la valeur de mon textaera..

    Si quelqu'un peut me venir en aide ce serai formidable, merci par avance

    un webmaster en difficulté

  2. #2
    Membre averti
    Profil pro
    Webmaster
    Inscrit en
    Mars 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2007
    Messages : 39
    Par défaut
    Personne n'est donc capable de me venir en aide
    snif

  3. #3
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Bonjour,
    si tu connais déjà le pb lié à tinyMCE (déjà signalé ici, je crois)

    Si onBlur fonctionne pas, je doute que onchange fasse mieux (ce serait pourtant l'évènement le + adapté). A tester quand même ...

    A+

  4. #4
    Membre averti
    Profil pro
    Webmaster
    Inscrit en
    Mars 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2007
    Messages : 39
    Par défaut
    Bon concernant ce que j'essayai de faire , j'ai quelque peu avancé.

    - j'ai désactivé l'editeur de texte "tinyMCE" pour ne garder qu'un <textarea> classic.
    => Donc je parviens bien à gerer mon évenement onBlur

    Mon seul et unique souci, est que je ne sais pas comment faire appel depuis ma page iframe à une fonction qui se trouve dans la page principale

    dans mon IFRAME:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <textarea id="textarea_article" style="width: 650px;height: 350px;" onblur="RecupValTextarea()" > blabla... </textarea>
    et dans ma page PRINCIPALE:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <script language="JavaScript" type="text/JavaScript">
    <!--
    function RecupValTextarea()
    {
       var contenu_iframe = document.getElementById("iframe_article").contentWindow.document.getElementById('textarea_article').value;
     
       alert(contenu_iframe);
    }
    //-->
    </script>
    L'appel, tel qu'il est maintenant ne fonctionne pas (ce qui est logique) mais je ne vois pas comment procéder, quelqu'un peut t'il me venir en aide ?

    Merci par avance

  5. #5
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par Zadoner
    L'appel, tel qu'il est maintenant ne fonctionne pas (ce qui est logique) mais je ne vois pas comment procéder
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onblur="parent.RecupValTextarea()"
    A+

  6. #6
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Bonjour,
    Citation Envoyé par jamel3000
    Bonjour,
    en fait moi j'ai une iframe dans mon cadre,
    mais j'arrive pas à recupérer toutes les données qui y sont
    car moi je souhaite modifier la mise en forme , donc la balise body,
    avec le code j'y arrive pas, en bas de mon iframe j'ai mis un
    textarea censé récupéré l'affichage de l'iframe en onload,
    mais ca ne fonctionne pas.
    si quelqun pouvai m'aider ca serait très gentil
    merci braucoups
    mieux vaudrait faire un nouveau sujet pour poser ta question, même si le pb est similaire

    A+

Discussions similaires

  1. Réponses: 1
    Dernier message: 08/09/2010, 22h17
  2. [POO] Json et récupération de données sans ajax (iframe ?)
    Par takeda dans le forum Général JavaScript
    Réponses: 21
    Dernier message: 05/12/2008, 20h47
  3. [ DB2] => [ORACLE] Récupération de données
    Par LeDid dans le forum DB2
    Réponses: 3
    Dernier message: 25/06/2003, 17h10
  4. Réponses: 13
    Dernier message: 20/03/2003, 08h11
  5. [XMLRAD] récupération de donnée
    Par Mitch79 dans le forum XMLRAD
    Réponses: 7
    Dernier message: 30/01/2003, 15h36

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