我的 history.back() 函数有问题。

我有三页 A、B、C:

  • 第一个 (A) 有一个到第二个 (B) 的链接,该链接包含
    参数 (?id=..)。
  • B 有一个链接到 C
  • 我用 history.back() 从 C 回到 B 。

  • 问题是 back() 函数实际上使用包含参数的 A 到 B 链接(来自历史记录),但我需要更改这些。

    所以我将 history.back() 更改为一个简单的 href 但当然,现在如果我点击返回,我将返回到 C 页面(我不想要的)。

    那么有没有办法使用不同参数的 back() 呢? (我使用 Angular,可能会有帮助)。

    一个.html:
    <body ng-controller="AuthentCtrl">
        <div align="center">
            <button ng-click="location.href = 'view/listing.html?id=' + id + '&first=' + newAuthent;">Go!</button>
            <br/>
        </div>
    </body>
    

    B.html
    <body onload="init()">
    <script>
        function init(){
            var params = location.search.substring(1).split('&');
            id = params[0].split('=')[1];
            var firstCo = params[1].split('=')[1];
            // execute some code, function of parameters
        }
    </script>
    </body>
    

    .html
    <body>
        <div align="center">
            <button ng-click="history.back()">Go!</button>
            <br/>
        </div>
    </body>
    

    最佳答案

    无法使用 javascript 更改您的历史记录。

    如果您来自页面“A”或“C”,您是否尝试使用 referrer 属性来确定页面“B”?

    关于Javascript : go back with new parameters,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16297155/

    10-12 00:58