改变路线运行

时间:2014-03-10 12:26:25

标签: visual-studio-2013 asp.net-mvc-5

我创造了这条路线:Home / PaginaBase 此路由称为新页面,称为 PaginaBase ,它具有类似的页眉和页脚索引。这会创建一个页脚菜单 当我从这个菜单中选择一个项目时,他叫我PaginaBase骑这样的URL: http://www.localhost:58686/Home/PaginaBase/6/3。  在那之前,没关系。当我选择另一个项目(PaginaBase仍然在里面)时,它会在通话中保留相同的网址并再次添加Home/PaginaBase/8/3,这是一条不存在的路线。
我该如何解决这个问题?

下面是我的jquery函数。

function MontaMenuInferior() {

    var str = "";
    $.ajax({
        url: '/Home/MontaMenuInferior',
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        type: "POST",
        success: function (data) {

            $(data.resultado).each(function () {

                str = str + '<ul class="grid_4">' +
                                    '<li>' + this.SubCategoria + '</li>';


                $(this.subconsulta).each(function () {

                    if (this.Id_SubCategoria2 != null) 

                        str = str + '<li><a href="Home/PaginaBase/' + this.Id_SubCategoria2 + '/3" title="">' + this.SubCategoria2 + '</a></li>';
                        //str = str + '<li><a href="@Url.RouteUrl(PaginaBase"',new{ Parametro : this.Id_SubCategoria2, tipo : '3'} + ")">this.SubCategoria2 + '</a>'
                    else
                        str = str + '<li><a href="#' + this.SubCategoria2 + '" title="">' + this.SubCategoria2 + '</a></li>';

                });

                str = str + '</ul>';

                $('#menufooter').append(str);

                str = "";

            });
        },
        error: function (error) {

        }
    });
}

1 个答案:

答案 0 :(得分:1)

您在链接中使用了相对网址。如果您位于/Home/PaginaBase/6/3(即路径),并且点击指向Home/PaginaBase/8/3的链接,则您的新路径将为/Home/PaginaBase/6/3/Home/PaginaBase/8/3

使用绝对网址替换您的路径而不是附加到其中:/Home/PaginaBase/8/3(请注意开头的/。)