gpt4 book ai didi

javascript - 延迟在 IE 11 上保存 session 变量?

转载 作者:行者123 更新时间:2023-11-28 03:29:47 25 4
gpt4 key购买 nike

我有一个应用程序,它使用 Ajax 调用来使用 PHP 脚本获取 session 变量。在所有浏览器中,这都可以完美工作,但在 IE 11 中,它仅在页面重新加载后才有效。因此,当页面加载时,Ajax 调用返回 null,但当我重新加载页面时,它确实返回。

$.ajax({
type: "GET",
url: "/ajax/fetch/session",
success: function(data) {
obj_fields = $.parseJSON(data);
console.log(obj_fields);
}
});

当我在多页表单上使用它时,每个页面的值首先存储在 session 中,我注意到,例如,当我填写第一页,提交下一页时,我需要重新加载才能获取 session 。从页面 2 到页面 3,加载页面 1 中的 session 变量,但仅在页面重新加载后才存储页面 2 中的 session 变量。我唯一能想到的是 IE 需要一段时间才能在 session 中存储变量。

这是正确的吗?我怎样才能最好地解决这样的问题?

或者 Ajax 调用的返回值是否以某种方式缓存在 IE 中?

在进行 Ajax 调用之前,我已经尝试过延迟 5 秒,但这也不起作用。仅在页面重新加载时

最佳答案

缓存默认设置为 true,尝试像这样禁用:

$.ajax({
type: "GET",
url: "/ajax/fetch/session",
cache: false,
success: function(data) {
obj_fields = $.parseJSON(data);
console.log(obj_fields);
}
});

cache (default: true, false for dataType 'script' and 'jsonp') Type: Boolean If set to false, it will force requested pages not to be cached by the browser. Note: Setting cache to false will only work correctly with HEAD and GET requests. It works by appending "_={timestamp}" to the GET parameters. The parameter is not needed for other types of requests, except in IE8 when a POST is made to a URL that has already been requested by a GET.

https://api.jquery.com/jquery.ajax/

关于javascript - 延迟在 IE 11 上保存 session 变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58275427/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com