使用javascript在刷新时将查询字符串附加到URL

时间:2015-08-06 19:56:11

标签: javascript jquery

我正在尝试读取标签,并在用户点击浏览器上的刷新按钮后将其值附加为查询字符串。我到目前为止的代码是:

 function AppendQueryString() {
            var currUrl = document.location;
            var trackingNbr = $("#lblTrackingNbr").text();
           if (window.location.href.indexOf("?TrackingNumber=") <= 0 && trackingNbr !== null) {
                document.location = currUrl + "?TrackingNumber="+ trackingNbr;  
            }
        }

        window.onbeforeunload = AppendQueryString(); 

问题是,即使标签在我点击刷新之前有值,trackingNbr变量也总是为null。我做错了什么或有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

SessionStorage将是一个很好的解决方案,如下所示:

sessionStorage.setItem("trackingNbr", trackingNbr);

单击刷新按钮时,您可以轻松地从会话存储中取回此值:

var trackingNbr = sessionStorage.getItem("trackingNbr");

安全性:由于这是会话存储而非本地存储,因此会话结束时将从浏览器中清除该值。请注意,只有您的域可以访问您放入会话或本地存储的任何内容。但是,知识渊博的最终用户可以使用任何主流浏览器中的开发人员工具来读取值。