关闭对话框时,运行函数作为参数传递

时间:2014-05-29 12:42:41

标签: jquery jquery-ui dialog

在我的spring项目中,我有这个代码打开一个对话框(使用jquery-ui),在那里我显示了一些页面的内容:

$( ".dialog" ).dialog({
      autoOpen: false,
      closeOnEscape: true,
      closeText: "fechar",
      show: {
        effect: "fadeIn",
        duration: 1000
      },
      hide: {
        effect: "fadeOut",
        duration: 1000
      },
      close: function( event, ui ) {
          //
      }
});

function open_dialog(url, dialog_div, func) {
    $.ajax({
        type: "GET",
        url: url
    }).done(function(data){
        var $temp  = $('<div/>', {html:data});
        var text = $(dialog_div).find('#text');
        $( dialog_div ).dialog({ title: $temp.find('title').text() });
        $( text ).html($temp.remove('head').html());
        $( dialog_div ).dialog({ height: 720 });
        $( dialog_div ).dialog({ width: 720 });
        $( dialog_div ).dialog( "open" );
    });
}

$(document).on('click', '.popup', function (event) {
    event.preventDefault();
    var action = $(this).attr('href');
    var target = $(this).data('target');
    var func = $(this).data('function');
    var div = $("#"+target);
    open_dialog(action, div, func);
});

我的问题是:有没有办法在对话框事件中调用作为open_dialog参数传递的函数&quot; close:function(vent,ui)&#39;在第一个代码块?

1 个答案:

答案 0 :(得分:-1)

使用以下链接回答您的问题,谢谢:

 http://api.jqueryui.com/dialog/#event-close