单击

时间:2016-01-21 08:08:37

标签: jquery jquery-ui webforms

这是我打开jquery对话框的代码。它第一次工作(开放)但不是第二次(不开放)。类似的问题被问到here但这对我不起作用



function LoadGridView(id, row) {
  var dlg = jQuery('#Edit').load('Edit.aspx');

  dlg.dialog({
    autoOpen: false,
    modal: true,
    show: 'slide',
    close: 'slide',
    width: 400,
    height: 160,
    buttons: {
      "cancel": function() {
        dlg.dialog("close");
      }
    }
  });
  

  dlg.dialog("open");
}




1 个答案:

答案 0 :(得分:1)

当您尝试第二次打开时

您的 dlg 范围不存在,您需要全局存储它

// global var to hold dlg
var dlg;

$(document).ready(function() {

 // get element and store it in dlg global var so that its scope may retain
  dlg = $("[id$='Edit']");


  dlg.dialog({
    autoOpen: false,
    modal: true,
    show: 'slide',
    close: 'slide',
    width: 400,
    height: 160,
    buttons: {
      "cancel": function() {
        dlg.dialog("close");
      }
    }
  });

});