4 votes

parent.parent.window.location.href ne fonctionne pas

Je rencontre un problème étrange. J'utilise une fancybox dans mon projet et après avoir cliqué sur le lien de la fancybox, je la ferme et essaie de recharger la fenêtre parent. J'utilise ce code.

<script>
    parent.$.fancybox.close();  
    parent.parent.window.location.href = '<?php echo base_url();?>home/job_posting/<?php echo $id ;?>';
</script>

Cela fonctionne localement, mais lorsque l'on essaie de l'exécuter sur un serveur en direct, cela ne fonctionne pas. J'utilise le cadre Codeigniter et je fais cela dans ma méthode de contrôleur.

Aidez-moi, s'il vous plaît.

0voto

JFK Points 25974

Eh bien, si tu essaies juste de recharger les parent après avoir fermé fancybox, il suffit de fermer fancybox à partir de la page ouverte (comme vous le faites) comme suit

<script>
    parent.$.fancybox.close();
</script>

... et recharger le parent page de lui-même en ajoutant à votre script personnalisé fancybox le afterClose comme

$(".fancybox").fancybox({
    // other API options here
    afterClose : function() {
        location.reload();
        return;
    }
});

D'un autre côté, si vous n'essayez pas simplement de recharger la parent mais qui essaie en fait de rediriger vers une autre page, alors utilisez window.location.pathname si vous utilisez un chemin relatif ou window.location.href pour un chemin complet.

Vous pouvez également essayer self.location.href .

NOTE : afterClose est pour fancybox v2.x, Pour fancybox v1.3.4 utilisez onClosed à la place.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X