当我在js文件中使用jQuery post函数时,如下所示:
$.post("/map/GetWindowedMapInfo", {
width: windowWidth * 2,
height: windowHeight * 2,
xCoord: winXCoord,
yCoord: winYCoord }, function (data) {...});
它在vs2010开发人员服务器上运行良好,但在IIS上发布ASP.NET MVC项目时失败,关联的控制器功能不再运行,因为url错误。
我必须使用'<%= Url.Content("~/map/GetWindowedMapInfo") %>'
来替换旧的URL,但这只能在.aspx或.ascx文件中使用。你知道在js文件中制作一个可用url的方法,而不是使用<%=Url.Content(...) %>
函数,因为我不想把我的js文件放在aspx页面中。
答案 0 :(得分:1)
你不应该硬编码这样的网址:
$.post("/map/GetWindowedMapInfo", {
...
});
相反,您应该使用URL帮助程序:
$.post("@Url.Action("GetWindowedMapInfo", "map")", {
...
});