您的位置:首页 > Web前端 > JavaScript

母版页Master中Html控件img,a,javascript相对路径问题

2010-12-13 17:25 393 查看
在一个WEB项目时,我发现了一些关于母版页相对路径的问题

1.<img>控件,图片不能显示

解决方案:

修改前:

<img src="images/footlogo.jpg" />

修改后:

<img src="images/footlogo.jpg" runat="server" />

2.<a>控件

修改前:

<a href="Report/WCDMAHSDPA.aspx" >WCDMA HSDPA</a>

修改后:

<a href="Report/WCDMAHSDPA.aspx" runat="server">WCDMA HSDPA</a>

3.javascript

(1)路径的问题,加一段<%=Request.ApplicationPath %>
<script src="<%=Request.ApplicationPath %>sdmenu/sdmenu.js">
</script>

(2)如果JavaScript中带<%=Request.ApplicationPath %>,这段添加脚本的代码不要放在head中,放到Body里,这是因为<%=Request.ApplicationPath %>不能再runat="server"代码块中。

如果放在head中,报错误System.Web.HttpException,控件包含代码块(即<%...%>,因此无法修改控件集合,错误如下所示:



修改前代码:

<head id="Head1" runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题页</title>
<link href="css/main.css" type="text/css" rel="stylesheet" />
<link rel="stylesheet" type="text/css" href="sdmenu/sdmenu.css" />
script type="text/javascript" src="<%=Request.ApplicationPath %>sdmenu/sdmenu.js">
</script>
<script type="text/javascript">
// <![CDATA[
var myMenu;
window.onload = function() {
myMenu = new SDMenu("my_menu");
myMenu.init();
};
// ]]>
</script>
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
<%-- <asp:ContentPlaceHolder id="head" runat="server">
</asp:ContentPlaceHolder>--%>
</head>

修改后代码:

<body>
<script type="text/javascript" src="<%=Request.ApplicationPath %>sdmenu/sdmenu.js">
</script>
<script type="text/javascript">
// <![CDATA[
var myMenu;
window.onload = function() {
myMenu = new SDMenu("my_menu");
myMenu.init();
};
// ]]>
</script>
<form id="form1" runat="server">
<div id="main">
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: