Close ColorBox iFrame after submit

2020-02-08 04:13发布

I'm using jQuery ColorBox to display a shopping cart item. When a user enters the quantity in the iFrame (opened with colorbox) and clicks on the submit button, I want the iFrame to be close and main window (parent) to be refreshed automatically.

I mean I want two things after submitting data on iFrame:

  1. iFrame closes automatically.
  2. Parent window getting refresh automatically.

Please help me out.

9条回答
Ridiculous、
2楼-- · 2020-02-08 04:55

If you're using Drupal 7, you may need to use the following alternative:

parent.jQuery.colorbox.close();

In D7, the $.fn seems to be replaced by the jQuery object.

I simply setup a menu callback which simply returned this:

return <<<EOF
<script type="text/javascript">
  <!--//--><![CDATA[//><!--
  parent.jQuery.colorbox.close();
  //--><!]]>
</script>
EOF;

Seemed to work fine for me :)

查看更多
何必那么认真
3楼-- · 2020-02-08 04:56

use this on the parent window while opening iframe:

$(document).ready(function(){
    $(".chpic").colorbox({width:"80%", height:"80%", iframe:true, 
        onClosed:function(){ location.reload(true); } });
});

and this to close the iframe inside iframe page:

parent.$.fn.colorbox.close();
查看更多
【Aperson】
4楼-- · 2020-02-08 04:59

If you want to stay on current page :

  1. write the following code on parent page where colorbox is applied.

    $(document).ready(function(){
    
     $(".tu_iframe_800x600").colorbox({width:"80%", height:"100%", iframe:false 
    
      });
    });
    
  2. and the following code on your current page where you want to close colorbox parent.$.fn.colorbox.close();

Note: please replace .tu_iframe_800x600 with your html class on which the colorbox is called...

查看更多
登录 后发表回答