相对AJAX路径独立于Web服务器上的应用程序级别

时间:2009-04-15 13:54:01

标签: .net javascript asp.net-mvc

我有一些javacsript代码,如下所示。注意它是如何使用一些参数调用“/ ContollerName / ActionName”的ajax。只要应用程序部署在IIS中的站点根目录上,这就可以正常工作。但是如果我将它部署在虚拟目录上,路径将一直指向站点根目录,它将失败。

$.get("/ControllerName/ActionName", { foo: _bar, foo2: $(titleRow).attr("id"),
            Direction: direction
        }, function(data, success) {
            if (eval(data).Result == _successEnum) {
                successfulCallback();
            } else {
                failCallback(errorMessage, eval(data).LogPath);
            }

        }, "json");

如何制作它,以便可以在站点根级别和虚拟目录上进行部署。

以下两者基本上都应该有效。我使用ASP.NET MVC。

1 个答案:

答案 0 :(得分:1)

使用Url.Action作为第一个参数。

// link to a controller 
Url.Action("Home");
// link to an action 
Url.Action("Home", "Index");