【问题标题】:How to change value before page refresh using Javascript?如何在使用 Javascript 刷新页面之前更改值?
【发布时间】:2016-11-04 03:17:21
【问题描述】:

我想在刷新页面之前更改变量值。

我的主要目标是每 3 秒将 URL 存储到数组中。 存储 URL 工作正常,但是当页面刷新时 index[ind] 和 array[urllist] 变为空。我想在刷新前更改 ind ,urllist 长度。请告诉我最终的解决方案。

   <html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <script>
        var urllist = [];
        var ind = 0;
        var myVar;
        myVar = setInterval(Geturlfun, 3000);
        function Geturlfun() {
            var pageURL = window.location.href;
            if (urllist[ind - 1] == pageURL) {

            } else {
                urllist[ind] = pageURL;                    
                ind = ind + 1;
                alert(pageURL);
            }
        }
        function goBkHist(a) {
            var l_ref = ind - 2;
            if (l_ref != 0) {
                var pageURL2 = urllist[l_ref];
                ind = l_ref + 1;
                alert(pageURL2);
                loadUrl(pageURL2);
            }
        }
        function goFdHist(a) {
            var l_ref_2 = ind;
            var pageURL2 = urllist[l_ref_2];
            ind = l_ref_2 + 1;
            alert(pageURL2);
            loadUrl(pageURL2);
        }
        function loadUrl(newLocation) {
            window.location = newLocation;
            location.reload();
            return true;
        }
    </script>
</head>
<body>
    <input type="button" value="BACK " onclick="goBkHist(-1)" />
    <input type="button" value="FORWARD" onclick="goFdHist(1)" />
</body>
</html>

我尝试了下面的代码来刷新更改。但它会在警报框中显示文本消息。我不想显示任何警报框。我想在不弹出显示的情况下运行函数或更改值。

window.onunload = function (e) {
                var dialogText = '0';
                e.returnValue = dialogText;
                return dialogText;
            };

提前致谢。

【问题讨论】:

  • 请记住,刷新页面会重置 DOM 的状态。因此,您需要将信息保存在客户端或服务器端,然后再刷新并在完成后检索信息。你可能想看看 localStorage 选项
  • 您需要持久化数据,以便它可以在单个页面请求之后继续存在。网络存储可以在这里为您提供帮助。

标签: javascript jquery


【解决方案1】:

在页面刷新时,DOM 会重新加载,删除您曾经拥有的任何可变数据。所以你需要一个地方来存储数据。例如网络存储或数据库等。

看看这个 - http://www.w3schools.com/html/html5_webstorage.asp

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-25
    • 1970-01-01
    • 2011-07-21
    • 2011-01-07
    相关资源
    最近更新 更多