【发布时间】:2011-09-28 21:52:57
【问题描述】:
我有一个 jQuery 对话框和一个 asp.net 按钮(删除)。单击删除按钮时,我希望对话框打开一个确认窗口,显示“您确定要删除此记录吗?”。当用户单击是时,我想恢复 asp.net 回发。到目前为止,这是我的代码:
$("#dialog-delete").dialog({
autoOpen: false,
height: 200,
width: 400,
modal: true,
resizable: false,
buttons: {
'Cancel': function () {
$(this).dialog('close');
},
'Yes': function () {
$(this).dialog('close');
//__doPostBack('ctl00$cp1$btnDelete','');
}
},
open: function () {
$(":button:contains('Yes')").addClass("red");
}
});
$("[id*=btnDelete]").live('click', function (e) {
e.preventDefault();
$("#dialog-delete").dialog('open');
});
所以我使用 preventDefault 停止回发,对话框打开并显示消息,但如果不对删除按钮进行硬编码,我无法触发删除,这很讨厌。无论如何我可以在对话框显示时暂停点击事件并在取消时调用 preventDefault 并在是时恢复?
【问题讨论】:
-
您可以使用javascript在一行代码中完成。 lbtnDelete.Attributes.Add("onclick", "return confirm('你确定要删除这条记录吗?');");
-
是的,但那是使用浏览器确认。我们在整个应用程序中使用 jQuery 对话框作为标准,我必须保持一致。到目前为止,除了在一个地方之外,我们不需要以这种方式“继续”回发(并且我们对回发调用进行了硬编码 - 就像我说的那样令人讨厌)。
标签: jquery asp.net jquery-dialog