我正在玩Jquery UI
我从DIV手动创建一个对话框,我给了这个DIV和ID以及一个调用closeDialog函数的按钮
它正常工作,如本例所示
我遇到的问题是,如果我加载包含BUTTON的页面。该按钮不起作用
如:
$("<div id='mydialog1'>").dialog({
autoOpen: false,
modal: false,
width: 740,
height: 840,
title: 'Dialog1 = dynamic',
open: function(e, ui){
$(this).load(myUrl);
}
});
答案 0 :(得分:2)
如果这是按钮,请单击“事件代码”,然后单击
autoOpen: false,
应该是
autoOpen: true,
编辑:如果你不打开它,直到你点击按钮,然后:
当您想要创建对话框时执行此操作。
var $dialog = $("<div id='mydialog1'>").dialog({
autoOpen: false,
modal: false,
width: 740,
height: 840,
title: 'Dialog1 = dynamic',
open: function(e, ui){
$(this).load(myUrl);
}
});
并在单击按钮后(仅在创建对话框后)执行此操作
$("button_selector").click(function () {
$dialog.dialog("open");
});
编辑:尝试更改
function closeDialog1(){
alert('closing Dialog1');
window.parent.$('#mydialog1').dialog('close');
return false;
}
到
function closeDialog1(){
alert('closing Dialog1');
$('#mydialog1').dialog('close');
return false;
}
或者更好的方法可能是
$("<div id='mydialog1'>").dialog({
autoOpen: false,
modal: false,
width: 740,
height: 840,
title: 'Dialog1 = dynamic',
open: function(e, ui){
$(this).load('dialogtest1a.html');
},
buttons: {
"Close" : function () {
$(this).dialog("close");
}
}
});
关闭对话框的按钮是否必须在您正在加载的页面中?