href =“#”正在打破Angular路线

时间:2013-12-02 15:47:20

标签: angularjs zurb-foundation

所以我的路线设置如下:

var app = angular.module("MSL", [])
.config(function($routeProvider, $locationProvider){

    $routeProvider
        .when("/dev.html", {
            redirectTo: "/template1"
        })
        .when("/template1", {
            templateUrl: "/views/template1.html",
            controller: "template1Ctlr"
        })

});

由于内部原因,我无法使用html5mode。我也在为这个项目使用Foudation,因为它是一个演示。我有一个使用Foudation自定义表单样式的表单。这意味着使用常规div / a / ul元素替换(动态)下拉列表以实现样式。这一切都很好,除了下拉列表现在是一个带有href =“#”的标签。由于我没有使用html5模式,因此网址如下:

/dev.html#/template1

当我点击下拉列表(标签)时,我被重定向到

/dev.html

因为href。有没有解决的办法?我不想修改Foundation文件(我不应该这样做)。

一如既往地感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我最终只是使用jQuery动态更改URL,如下所示:

$(".dropdown a").attr("href", location.hash + "#");

这会将href我的下拉链接转到

/dev.html#/template1#

工作正常。