首页 新闻 会员 周边

用户控件图片相对路径出错的问题

0
悬赏园豆:50 [已解决问题] 解决于 2009-04-26 16:05

用户控件图片相对路径出错的问题

1、新建了一个网站,website是网站的根目录,下面有一个/images目录,放置一个图片head.JPG,用户控件head.ascx放置在/Controls目录下。

2、用户控件head.ascx,加入/images目录下的图片head.JPG,用两种方法,head.ascx代码如下:

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="Head.ascx.cs"

Inherits="Controls_Head" %>

<asp:Image ID="Image1" runat="server" ImageUrl="~/Images/head.JPG" />
<br/>
<img src='../Images/head.JPG' alt="测试" />

3、把用户控件拖放到根目录下的Default.aspx文件(位于根目录下)里,Default.aspx代码如下:

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs"

Inherits="_Default" %>

<%@ Register Src="Controls/head.ascx" TagName="Head" TagPrefix="uc1" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>无标题页</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <uc1:head ID="Head1" runat="server" />
   
    </div>
    </form>
</body>
</html>

4、此时运行Default.aspx的效果如下:发现head.ascx中第二种写法<imgsrc='../Images/head.JPG'  alt="aaa" />不能正确显示图片,通过改为“<img src='<%=Request.ApplicationPath%>/Images/head.JPG' alt="测试" />”,调试用浏览器查看是可以了,但在VS2005中的“设计”视图中,图片也还是不能显示。请问能两者都兼顾吗?

 

航海的主页 航海 | 初学一级 | 园豆:150
提问于:2009-04-24 09:41
< >
分享
最佳答案
0

试试: 

 <asp:Image ID="Image1" runat="server" ImageUrl='<%= ResolveUrl("~/Images/head.JPG")%>' />
<br/>
<img src=<%= ResolveUrl("~/Images/head.JPG")%>' alt="测试" />

Insus.NET | 小虾三级 |园豆:932 | 2009-04-24 19:02
其他回答(2)
0

直接用根目录:<imgsrc='/Images/head.JPG' alt="aaa" />

I,Robot | 园豆:9783 (大侠五级) | 2009-04-24 09:43
0

<asp:Image id="img" runat="server" ImageUrl="~/Images/Head.jpg" />

James.Ying | 园豆:1472 (小虾三级) | 2009-04-24 12:49
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册