Asp.Net母版页中引用文件路径注意事项
1、引用CSS路径
直接使用相对地址即可,在使用时能够自动把地址按照相对地址进行转化;
如在母版页中引用地址为:<link rel="stylesheet" href="../Css/News/default/css/css.css" type="text/css" />
在继承母版页的页面中自动转化为相对路径地址:<link rel="stylesheet" href="http://www.cnblogs.com/../Css/News/default/css/css.css" type="text/css" />
2、引用JS文件
方法一:在web页面文件中使用Page.ResolveClientUrl("js路径")解决
<script type="text/javascript" src='<%=ResolveClientUrl("../js/test.js")%>'></script>
备注:script中不能有属性language="javascript"
方法二:在cs页面文件中动态添加js文件,当然也要使用ResolveUrl或ResolveClientUrl方法
HtmlGenericControl CheckJs = new HtmlGenericControl("script");
CheckLinkJs.Attributes.Add("type", "text/javascript");
CheckLinkJs.Attributes.Add("src", Page.ResolveUrl("../js/test.js"));
CheckLinkJs.Attributes.Add("charset", "utf-8");
Page.Header.Controls.Add(CheckJs);
3、引用其它文件
在web页面文件中使用Page.ResolveClientUrl("文件路径")解决
在使用ResolveClientUrl时可能会出现错误“控件包含代码块(即 <% ... %>),因此无法修改控件集合”
解决办法是“在<head runat="server"></head>里面,使用了<%...%>代码, 把Head中使用的<%=.....%>的脚本放到body中,或者全部使用cs代码中动态添加引用”