我创建了一个jQuery对话框.下面是我创建它的Ajax函数.
$.ajax({
url: "/StaffManageCertifications/GetExamCodesAndCategory/",
type: "Post",
datatype: "html",
success: function (data) {
debugger;
$('#divExamCodesCategory').html(data);
$("#divExamCodesCategory").dialog({
autoOpen: false,
width: 700,
height: 610,
modal: true,
resizable: false,
draggable: true,
title: 'Add Exam Code/Category'
});
$("#divExamCodesCategory").dialog("open");
$('a.ui-dialog-titlebar-close').remove();
$('#divProcessImage').css({
"display": "none"
});
},
error: function (req, status, error) {
ErrorMessageStaff(req.responseText);
$('#screen').css({
"display": "block",
"width": "",
"height": ""
});
$('#divProcessImage').css({
"display": "none"
});
}
});
Run Code Online (Sandbox Code Playgroud)
现在,我在div = divExamCodesCategory上放置了两个按钮(Ok和Cancel).
并且在我关闭它时,每次都在代码行下面写下来销毁这个对话框.
$("#divExamCodesCategory").dialog("destroy");
Run Code Online (Sandbox Code Playgroud)
现在,当我第二次打开它时,第一次点击 - 它没有显示对话框.在第二次点击时 - 它确实显示对话但没有数据.空对话框.
此外,它不是在屏幕的中心.它下降到屏幕的底部.下面是此对话框的位置样式.
.ui-dialog {
padding: 0em !important;
position: fixed !important;
}
Run Code Online (Sandbox Code Playgroud)
对此有任何帮助表示赞赏.
谢谢.
如果您打算在每次关闭时销毁对话框,则需要在对话框的关闭处理程序中完成:
$(...).dialog({
...,
close: function() {
$(this).dialog('destroy');
}
});
Run Code Online (Sandbox Code Playgroud)
就目前而言,如果您(未示出)destroy调用紧跟在此AJAX调用之后,正如您所描述的那样,它实际上会立即发生,因为AJAX调用是异步的并且直接完成.
ps而不是使用$.css({'display': 'none'}),只需使用.hide()
| 归档时间: |
|
| 查看次数: |
5960 次 |
| 最近记录: |