我有一个用户控件,包括一个列表视图,其中包含一个弹出jQuery对话框的超链接(LnkDelete)。
这是执行工作的JavaScript代码
$('#LnkDelete').live('click', function (e) {
var page = $(this).attr("href");
var $dialog = $('<div></div>')
.html('<iframe style="border: 0px;" src="' + page + '" width="100%" height="100%"></iframe>')
.dialog({
autoOpen: false,
modal: true,
height: 200,
width: 600,
title: "Are you sure you want to delete ...?"
});
$dialog.dialog('open');
e.preventDefault();
});
这是将“DeleteBranch”网络表单打开为对话框的超级链接:
<asp:HyperLink ID="LnkDelete" runat="server" NavigateUrl='<%# Eval("ID", "~/Personnel/DeleteBranch?Id={0}") %>' ClientIDMode="Static" CssClass="button-delete" />
“DeleteBranch”网页表单包含一个“Ok”和“Cancel” ASP按钮的用户控件。 “确定”按钮只是执行原始列表视图中相关行的删除操作。
问题是: 如何使“取消”按钮关闭弹出窗口?
答案 0 :(得分:2)
$('#LnkDelete').live('click', function (e) {
var page = $(this).attr("href");
var $dialog = $('<div></div>')
.html('<iframe style="border: 0px;" src="' + page + '" width="100%" height="100%"></iframe>')
.dialog({
autoOpen: false,
modal: true,
height: 200,
width: 600,
title: "Are you sure you want to delete ...?",
buttons: [
{
text: 'OK',
click: function() { /*Your delete operation*/ }
},
{
text: "Cancel",
click: function() { $dialog.dialog('destroy'); }
}
]
});
$dialog.dialog('open');
e.preventDefault();
});
正如您所说,如果您使用 ASP 按钮,请将该按钮设为ID
,如btn_cancel
并添加以下脚本:
<script lang='javascript'>
$(document).ready(function(){
$('#btn_cancel').click(function(){
$dialog.dialog('destroy');
});
});
</script>