C# asp.net webforms中的url路由后,js文件和css文件未正确加载
我正在尝试为asp.net webforms实现URL路由。我的问题是页面上没有加载所有的js文件和css文件,因为它无法引用正确的路径 我已经参考了我的主页上的js,如下所示C# asp.net webforms中的url路由后,js文件和css文件未正确加载,c#,asp.net,C#,Asp.net,我正在尝试为asp.net webforms实现URL路由。我的问题是页面上没有加载所有的js文件和css文件,因为它无法引用正确的路径 我已经参考了我的主页上的js,如下所示 <script type="text/javascript" src="Scripts/jquery-1.7.1.min.js" charset="utf-8"></script> <script type="text/javascript" src="~/Scripts/jquer
<script type="text/javascript" src="Scripts/jquery-1.7.1.min.js" charset="utf-8"></script>
<script type="text/javascript" src="~/Scripts/jquery-1.7.1.min.js" charset="utf-8"></script>
您能帮我找到一个解决方案吗。这是调用JQuery脚本的正确格式。“~”指的是根目录。因此,假设脚本位于此位置,它应该可以工作
<script type="text/javascript" src="~/Scripts/jquery-1.7.1.min.js" charset="utf-8"></script>
但是,它上面的行尝试加载相同的脚本,但不包含“~”字符
<script type="text/javascript" src="Scripts/jquery-1.7.1.min.js" charset="utf-8"></script>
…并且您没有尝试加载任何CSS文件。因此,删除第一行,然后添加正确的标记以加载CSS文件
<link rel="stylesheet" type="text/css" href="~/Content/mystyle.css">
您可以使用
Page.ResolveUrl(“…”)
将从相对路径生成绝对路径:
<script type="text/javascript" src='@Page.ResolveUrl("~/Scripts/jquery-1.7.1.min.js")' charset="utf-8"></script>
或
取决于您是否正在使用。仅使用
/
,因为它表示站点的根目录。(如果Scripts
dir位于根目录下)
您需要更改重写规则,以排除js和CSST之类的内容。这并非在所有情况下都有效。。。想象一下,他将在一个子文件夹中发布主页,即:http://foo.com/bar/
。因此,如果他使用/
,浏览器将在http://foo.com
而不是http://foo.com/bar/
<script type="text/javascript" src='<%= Page.ResolveUrl("~/Scripts/jquery-1.7.1.min.js")%>' charset="utf-8"></script>
<script type="text/javascript" src="/Scripts/jquery-1.7.1.min.js" charset="utf-8"></script>