我发现 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 或者类似的东西吗?或提取响应的正文?
最佳答案
用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
});
}
});
关于javascript - 为什么我的 jquery 模式在整页 ajax 加载后停止工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44528040/