所以我的 UI 上有一个调用此 Javascript 函数的按钮:
function OpenHistory(transactionId, spanThatWasClicked)
{
$.ajax({
type: "POST",
url: "<%= Url.Action("ViewHistory", "Indications") %>",
data : { transactionId : transactionId },
success: function(data) {
$("#history").html(data);
$("#history").dialog({
modal: true,
resizable: false,
title: "Valuation History",
width: 850,
height: 500,
autoOpen: true,
buttons: { "Close": function () { $(this).dialog("close"); } }
});
}
});
}
#history
它的设置在页面上看起来像这样:<div id="history"></div>
我第一次点击它时——进行 AJAX 调用,打开对话框,一切看起来都很完美。
关闭对话框
我第二次点击它 -- 没有任何反应。它进行 AJAX 调用和所有操作,但屏幕上没有出现对话框。
刷新页面
它会回到仅在第一次点击时再次工作,就像上次一样。
这是不是有些奇怪的对话?
谢谢。
最佳答案
尝试将成功代码更改为:
success: function(data) {
$("#history").html(data)
.dialog({
modal: true,
resizable: false,
title: "Valuation History",
width: 850,
height: 500,
autoOpen: true,
buttons: { "Close": function () { $(this).dialog("close"); } }
}).dialog('open');
}
这样它将通过 dialog('open')
调用确保打开
关于JQuery 对话框帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5888240/