从RouteUrl获取完整的URL

时间:2016-12-07 10:13:19

标签: javascript c# asp.net-mvc razor

我的生产服务器中的应用程序出现问题,因为网站使用网址“http://productionserver.com/myAppName/controllerName/actionName”运行

我需要添加到我的JavaScript函数完整网址。

现在我在Razor中使用并将其作为一些JavaScript函数的输入:

myFunc('@Url.RouteUrl("MyRouteUrlName")');

JavaScript功能:

function MyFunc(nextUrl) {
    $('#btnName').on('click', function () {
        function CallBurooVaadeValjumineConfirmModal(callback) {
            //problem get this url
            $.get('/OtherController/CallConfirmModal', function (data) {
                var callConfirmModal = data.toLowerCase() === "true" ? true : false;
                callback(callConfirmModal);
            });
        }

        function Back() {

        }

        function Next() {
            $.get('/OtherController/Set'); 
            window.location.href = nextUrl;
        }

        //...other code
    });
}

在控制器中我指定了它:

[Route("myRouteController/myRouteAction", Name = "MyRouteUrlName")]

它返回“/ myRouteController / myRouteAction”,但我需要例如“http://localhost:2000/myRouteController/myRouteAction”,我去哪里制作这个网址必须是“http://productionserver.com/myAppName/myRouteController/myRouteAction

如何使用@Url.RouteUrl()

1 个答案:

答案 0 :(得分:0)

我解决了问题,问题出在Javascript方面。

Razor JavaScript函数调用

MyFunc('@Url.RouteUrl("MyRouteUrlName")', '@Url.RouteUrl("MyRouteGetUrlName")', '@Url.RouteUrl("MyRouteSetUrlName")')

<强>的Javascript

function MyFunc(nextUrl, getUrl, setUrl) {
    $('#btnName').on('click', function () {
        function CallBurooVaadeValjumineConfirmModal(callback) {
            $.get(getUrl, function (data) {
                var callConfirmModal = data.toLowerCase() === "true" ? true : false;
                callback(callConfirmModal);
            });
        }

        function Back() {

        }

        function Next() {
            $.get(setUrl); 
            window.location.href = nextUrl;
        }

        //...other code
    });
}