【发布时间】:2012-02-05 18:22:08
【问题描述】:
嘿,我的 jquery-ui 对话框有问题。问题是当我关闭对话框然后单击触发它的链接时,除非我刷新页面或在对话框中保存任何数据,否则它不会再次弹出。
我使用的代码是:
<script type="text/javascript">
$(document).ready(function () {
$(".openDialog").live("click", function (e) {
e.preventDefault();
$("<div></div>")
.addClass("dialog")
.attr("id", $(this).attr("data-dialog-id"))
.appendTo("body")
.dialog({
close: function () {
$(this).remove();
},
modal: true
})
.load(this.href);
});
$(".close").live("click", function (e) {
e.preventDefault();
$(this).closest(".dialog").dialog("close");
});
});
</script>
【问题讨论】:
-
也许用
$('.dialog')替换$(this).closest('.dialog')。小提琴:jsfiddle.net/jud4L/1 -
您的代码有效 - jsfiddle.net/cJNfF 您使用哪个 jQuery/jQueryUI 版本?
-
您为什么不使用
autoOpen: false一次性创建对话框并打开/关闭它?