Passer une variable d'un overlay à une page parente

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Passer une variable d'un overlay à une page parente

Passer une variable d'un overlay à une page parente

par Bisvan » 16 avr. 2014, 11:17

Bonjour,

J'ai un problème sur le passage de variable entre une page overlay qui s'affiche au dessus d'une page parente.
Voilà l'idée.

J'ai 3 pages :
home.php
iframe.php (la page appelée dans mon overlay)
start.php (la page vers laquelle sera redirigée l'internaute une fois l'overlay fermée)

Dans home.php j'ai mon script overlay (colorbox)

[javascript] <script type="text/javascript">
$(document).ready(function(){
$(".iframe").colorbox({
iframe:true,
transition:"elastic",
scrolling: false,opacity:0.60,
width:"550px",
height:"300px",

onClosed:function(){
var name = $('#name').val(); // la valeur que j'essaye de récupèrer de mon overlay
location.href = 'start.php?name='+name;
}
});
});
</script>[/javascript]

Et mon lien pour ouvrir l'overlay :
 <a href="iframe.php" class="iframe">OPEN OVERLAY</a>

Dans iframe.php j'ai un script pour fermer la fenêtre en cliquant sur un bouton "VALIDER"

[javascript] <script type="text/javascript">
$(document).ready(function() {
$("#button_cancel").click(function() {
parent.$.colorbox.close();
return false;
})

});
</script>[/javascript]



Et un formulaire avec un champ texte et mon bouton fermer.
<form action="javascript:parent.$.colorbox.close()">
    <input type="text" id="name" value="" />
    <input value="Submit" type="button"  />
    </form>

Après avoir ouvert l'overlay, j'aimerai pouvoir remplir mon champs "name" puis en cliquant sur le bouton, fermer l'overlay, récupérer la valeur de ce champ et rediriger vers start.php?mavaleur=name en reprenant la valeur précédemment récupérée.

Auriez vous une idée de ce qui coince ?