如何绑定此脚本jquery的close事件

时间:2014-03-13 14:43:25

标签: javascript jquery

嗨我需要在单击模态对话框时关闭按钮时重新加载父页面。 我的代码是:

//customer edit start
 $( ".modal-customeredit" ).click(function() {
        var myGroupId = $(this).attr('data-id'); // data-id


           $.post("sample.php",
    {
      name:myGroupId,

    },
    function(data,status){

    });
                  $( "#modal-customeredit" ).dialog({
     modal: true,
     minWidth: 700,
     minHeight: 200,
     dialogClass: "modal-dialog",
     show: "fadeIn"




          });

       $('.ui-widget-overlay').addClass('bg-black opacity-60');


 });

我尝试将关闭按钮设为/

 $( ".ui-dialog-titlebar-close" ).click(function() {
      window.location.reload(true);
 });

在下面也尝试了内部。没有任何作用。任何人都可以帮助我。谢谢。

3 个答案:

答案 0 :(得分:1)

您可以使用本机create对话事件绑定关闭按钮单击。像这样:

$( "#modal-customeredit" ).dialog({
 modal: true,
 minWidth: 700,
 minHeight: 200,
 dialogClass: "modal-dialog",
 show: "fadeIn",
 create: function() {
        $(this).closest('div.ui-dialog')
               .find('a.ui-dialog-titlebar-close')
               .click(function(e) {
                   window.location.reload(true);
                   e.preventDefault();
               });}
 });

<强> Working Demo

答案 1 :(得分:0)

尝试使用window属性,从iframe

访问主页面
  

返回最顶层的浏览器窗口

你能在jsbin上给你的页面或例子链接吗?

答案 2 :(得分:0)

在运行时添加到DOM的元素需要事件委派,因为弹出窗口是使用model(jQuery UI)生成的 您可以执行以下操作来执行关闭按钮的单击事件:

$(document.body).on('click','.ui-dialog-titlebar-close',function(e) {
      e.preventDefault(); // To prevent default dialog close action
      window.location.reload(true);
});

请参阅.on()

的API文档

可能会解决这个问题。但我认为模型弹出窗口的close()已在UI中定义。您可以阻止默认操作。