我从ajax
调用内容进行模态对话 $.ajax({
url: "/Clerk/PauseServiceDialog",
success: function (data) {
$("body").append(data);
$("#pauseServiceDialog").modal({ keyboard: false });
}
});
当我关闭模态时,我使用此代码
$(document).on('hidden.bs.modal', ".modal", function (e) {
this.remove();
});
在firebug中我看到html代码被删除了。但如果我再次调用对话框并使用某些事件,我会得到2个事件。我如何理解模态对话框不能更正从DOM中删除。
答案 0 :(得分:1)
我找到了如何修复重复事件的答案。
$(document).on('hidden.bs.modal', ".modal", function (e) {
var name = "#" + $(this).find("button.btn-primary").attr("id");
$("body").off("click", name);
$(this).remove();
});
答案 1 :(得分:0)
您可以按代码隐藏模态
$("#pauseServiceDialog").data('bs.modal').hide()
P.S。抱歉,我不明白符号$(document).on('hidden.bs.modal'一般 - 你应该删除处理其事件的模态元素AND对象(它存储在$(“#pauseServiceDialog”)。data( 'bs.modal'))