我发现我的jQuery对话框有问题(使用jquery 1.3,很旧但我无法更新)。
当我这样做时
var request = $.ajax({
url: "${Request.context}/info/" + userId,
success: function(response) {
$("#userInfo").html(response);
}
});
$("#divUserInfo").dialog('open');
}
其中
$('#divUserInfo').dialog({
width: 700,
height: 250,
autoOpen: false,
modal: true,
title: "User Info",
resizable: false
});
对话框本身运行正常,每当没有内容或我$("#userInfo").html("any string possible");
但是当我加载ajax响应的整个页面时,我在控制台上看不到任何错误,但我无法重新打开对话框。有什么方法可以避免这种情况发生吗?我应该重新加载DOM或类似的东西吗?或提取反应的主体?
答案 0 :(得分:1)
在用ajax响应替换DOM之后,您需要重新初始化对话框插件,以便它也适用于更新的DOM元素
试试这个:
var request = $.ajax({
url: "${Request.context}/info/" + userId,
success: function(response) {
$("#userInfo").html(response);
$('#divUserInfo').dialog({
width: 700,
height: 250,
autoOpen: false,
modal: true,
title: "User Info",
resizable: false
});
}
});