在初始化之前无法在对话框上调用方法

时间:2013-07-25 09:28:37

标签: jquery-dialog

我试图在jQuery对话框中打开一个div。打开div作为对话框后,当我点击覆盖区域时,我收到此错误。

  

初始化之前无法在对话框上调用方法。尝试调用方法'close'。

这是我到目前为止所尝试的内容:

<div class="mydiv"></div>
var options = {
  modal: true,
  draggable: true,
  resizable: false,
  position: "center",
  buttons: {
    OK: function () {
      $(this).dialog("close");
    }
  },
  close: function () {
    $(".ui-dialog").remove();
  }
};
var dg = $(".mydiv").dialog(options);
$(dg).dialog("open");

//的document.ready

$(".ui-widget-overlay").live("click", function () { $(".mydiv").dialog("close"); });

可能有许多div具有相同的类名“.mydiv”。

1 个答案:

答案 0 :(得分:0)

buttons属性采用定义text属性的对象数组和包含事件处理程序的click属性。

var options = {
  modal: true,
  draggable: true,
  resizable: false,
  position: "center",
  buttons: [{
    "text": "OK",
    "click": function () {
      $(this).dialog("close");
    }
  }],
  close: function () {
    $(".ui-dialog").remove();
  }
};

有关详情,请查看documentation

工作示例 http://jsfiddle.net/unWzC/