页面重定向在javascript中包含来自上一页的数据

时间:2017-04-26 14:25:47

标签: javascript jquery html angularjs

我正在开发具有html javascript和angular js的前端项目。我只有一个索引页面,其中每个其他html将在散列更改时加载到div标签中。

<div ng-app="mainApp">
        <ng-view></ng-view>
    </div>

但问题是,在重新定位新页面或按下后退按钮后,上一页中加载的数据仍然在当前页面中,而不是正在清除。当我重新加载当前页面时,只有旧页面正在删除并加载相应的页面页面数据。在index.html中,我尝试过删除从每个页面加载的表,在页面更改时删除表

window.onhashchange = function() {

            if (document.getElementById("table") != null) {
                var tbl = document.getElementById("table");
                tbl.parentNode.removeChild(tbl);
            }
        }

但是上一页中剩余的html元素没有删除,如何在没有上一页数据的情况下重新加载页面内容。我正在使用window.location =&#34; #newpage&#34;用于重定向

1 个答案:

答案 0 :(得分:0)

对于有效的哈希管理,您应该使用角度路由器或角度UI路由器。使用此方法,您可以为每个路由(哈希)设置HTML模板和相应的业务逻辑。它会是这样的

var app = angular.module("myApp", ["ngRoute"]);
app.config(function($routeProvider) {
    $routeProvider
    .when("/", {
        templateUrl : "main.htm",
        controller : "mainCtrl"
    })
    .when("/red", {
        templateUrl : "red.htm",
        controller : "redCtrl"
    })
    .when("/green", {
        templateUrl : "green.htm",
        controller : "greenCtrl"
    })
    .when("/blue", {
        templateUrl : "blue.htm",
        controller : "blueCtrl"
    });
});

在每个控制器中,您可以在相应的模板中设置要加载的数据。

有关更多信息,请参阅这些链接