简体   繁体   中英

JavaScript url auto-resolution in Asp.Net MVC

I am running Asp.Net MVC 2.0, and I am running into a problem with my JS calls.

this is what I have in my :

<link href="../../Content/Site.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="../../Scripts/jquery.js"></script>

Which all works fine if I am on the root level. But if I jump up to something like:

Root/Items/Search/term/Page3

the JS doesn't run load - if I look at the source, the MVC is 'smart enough' to re-route the css, but not the Javascript:

<link href="../../../Content/Site.css" rel="stylesheet" type="text/css" /> 
<script type="text/javascript" src="../../Scripts/jquery.js"></script> 

I must be missing something, there has to be an easy way to do this correctly, any ideas?

To avoid this sort of problems never hardcode links like this. Use helper methods instead:

<link href="<%= Url.Content("~/Content/Site.css") %>" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="<%= Url.Content("~/Scripts/jquery.js") %>"></script>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM