MVC3相对URL路径 - Javascript

fes*_*fes 7 javascript url path relative-path asp.net-mvc-3

我有一个相对路径的问题,当Web应用程序在域的子目录中运行时,路径不正确.例如http://www.domain.com/webapp/

如果我在页面上使用@ Url.Content("〜/ path/to/action")就可以了.我甚至可以在javascript脚本中嵌入@ Url.Content("").我想清理我想把javascript放在js文件中的页面并引用它.现在,在javascript文件中调用@ Url.Content,它似乎不起作用(可能是出于显而易见的原因).我该如何解决这个问题?

我看了一眼,@Url.Content("~/path/to/action")但这似乎不起作用.

cou*_*ben 12

现在您已将所有内容移动到单独的js文件中,该文件将作为静态内容提供,并且不会解析Razor语法.

如果您需要js内部可能发生变化的相对路径,那么您应该在每个页面中包含一个设置路径var的脚本,并在此脚本中使用@ Url.Content(...),例如,

<script type="text/javascript">
    pathToAction = "@Url.Content(...)";
</script>
Run Code Online (Sandbox Code Playgroud)

然后,在js文件中声明pathToAction var,并根据需要使用它.