asp.net中在aspx页里面添加了一个Label控件,然后想通过Label控件向前台添加图片,具体问题请看补充~

在后台用了Label1.Text = Label1.Text = "img src=\"F:\\picture\\小鸡腿.jpg\" alt=\"error\"/>";发现无法向前台添加该图片, 然后我把“小鸡腿.jpg”的图片添加到解决方案里面,然后改为Label1.Text = "<img src=\"小鸡腿.jpg\" alt=\"error\"/> " ;后运行,图片就可以显示了,我就不明白了,这两者有什么区别呢?难道是路径的问题?可是如果直接在aspx页面里面使用Label1.Text = "img src="F:\picture\小鸡腿.jpg" alt="error"/>"也是可以添加图片的呀~~~求高手指教,困扰了好久了!!!

你对问题的认识是对的,就是路径的问题。
在解决方案中,设计模式或运行模式都是在你开发程序用的电脑上,
对图片的引用像F:\picture\小鸡腿.jpg这样是没有问题的。
可以,到了客户端,它还认得“F:\picture\小鸡腿.jpg“这是哪里吗?
用相对路径吧。
像你这样“然后改为Label1.Text = "<img src=\"小鸡腿.jpg\" alt=\"error\"/> " ;后运行,图片就可以显示了”,就非常对。

其实,这种问题是初学者最常犯的错误了。追问

额,高手你好,你说得很有道理,不过这让我产生了另外一个疑问:因为如果我直接在aspx页面中添加html语句: 的话在页面中也是可以显示图片的,如果按照你的说法的话,这客户端应该不认识这个路径的,可它为什么能显示呢?求解~~

追答

原因可能两点,你考虑一下是哪种可能。
1、你指的这个客户端是你自己的电脑吧。如果是,像我上面回答的一样。
2、像你在提问中说到的那样,把图片添加到了解决方案中了。
  那么对图片的引用,就跟路径没有关系了,肯定没有问题的。但不是很好的解决方法。
  比如,图片要更换时,你还得打开源代码,更新图片。

因此,对你的问题的解决方法,我想可以这样。
将图片放在与你的站点同目录下,当然可以建子目录,比如子目录为picture,
对图片的引用方法如 

试试看。

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-09-09
服务器控件Label生成HTML后变成<span></span>
如<asp:Label runat="server" id="Label1" Text="标签内容"></asp:Label>
生成后类似下面
<span id="Label1">标签内容</span>
如果要添加图片,那就用<asp:Image></asp:Image>服务器控件

希望回答对你有帮助。追问

额,你好,能不能给一个不用image控件,然后在后台向前台添加图片又能解决我上述问题的方法呢?

相似回答