我的网页包含3个iframe,顶部标题,左侧导航和内容iframe。
(这是遗留应用程序)。
包含3个iframe的页面对页面进行jQuery AJAX调用:
/users/getNotifications.aspx
有时(我相信当我没有登录时)浏览器会重定向到我的AJAX调用的URL,即localhost / users / getNotifications.aspx
我显然不希望它像这样重定向,任何想法为什么会发生这种情况?
注意:
我的页面回复:
Response.ContentType = "text/html";
Response.Write(resultInHtml);
此外,如果用户未登录,则页面不会重定向。
这是我使用ajax requesT来获取数据的方法:
var x = function () {
$.ajax({
type: "GET",
url: webRoot + "users/getNotifications.aspx",
cache: false,
success: function (payload) {
if (payload.length > 0) {
$("#users-popup").html(payload);
}
displayPopup();
}
});
}
答案 0 :(得分:0)
问题可能是你的javascript在你没有登录时不能很好地处理从你的页面返回的任何结果。可能它试图提取一个在这个上下文中不存在的值,从而抛出一个错误。
这将意味着它没有完成运行该函数,因此任何“return false”或其他防止默认行为的方法都没有运行,因此默认点击行为正在发生并导航到新页面。
没有更多代码,虽然这只是一种理论。