2

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"); });

同じクラス名「.mydiv」を持つ div が多数存在する可能性があります。

4

1 に答える 1

0

このプロパティは、プロパティbuttonsを定義するオブジェクトの配列と、イベント ハンドラーを含むプロパティを受け取ります。textclick

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

詳細については、ドキュメントをご覧ください。

作業例 http://jsfiddle.net/unWzC/

于 2013-07-25T09:31:59.463 に答える