假设母板页在根目录下,内容页abc.aspx在目录xyz下,abc.aspx继承母板页,菜单项Index.aspx在根目录下。
如果母板页的菜单链接这么写:
<a href="Index.aspx" >首 页</a> 或这么写: <a href="~/Index.aspx" >首 页</a>
那么在根目录下继承了母板页的内容页点击“首页”访问是没有问题的。但在xyz目录下的abc.aspx页面中点击“首页”时,则菜单项链接默认为“xyz/index.aspx"。但index.aspx实际是在根目录下的,则点击后就会出错,提示找不到Index.aspx页面。
为解决这个问题,母板页的菜单链接正确的写法是:
<a href="<%=Page.ResolveUrl("~/Index.aspx") %> ">首 页</a>
其中Page.ResolveUrl("~/Index.aspx") 相当于“在网站根目录中查找网页Index.aspx”
图片链接则有两种写法:
1.跟上面的链接一样:
<img src="<%=Page.ResolveUrl("~/image/in01.jpg" )%>" />
2.在img控件加上runat="server",服务器会自动判断路径,比如:
<img src="image/in01.jpg" runat="server" />