在webPage上加载图像

时间:2012-12-11 15:23:43

标签: c# asp.net html image

我试图在<asp:image>控件上加载图片。

问题是图像的路径保存在数据库中,而某些图像名称包含空格。例如“图像名称编号2.jpg”。

当我为asp控件设置ImageUrl属性时,可以毫无困难地分配它,但是当加载到html中时,url显示如下:

"C:\..\..\Image%20name%20number%202.jpg" 

由于那些“%20”,它找不到图片所以它不会显示。

我该怎么做才能解决这个问题?

2 个答案:

答案 0 :(得分:1)

%20部分实际上是空格字符。您可以通过将URL传递到javascript中的decodeURI()来轻松删除它:

//fileName = "C:....\Image%20name%20number%202.jpg"
var fileName = decodeURI( fileName );
//fileName = "C:....\Image name number 2.jpg"

您可以在此处详细了解:https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/decodeURI

decodeURI()相反的是encodeURI()

//fileName = "C:....\Image name number 2.jpg"
var fileName = encodeURI( fileName );
//fileName = "C:....\Image%20name%20number%202.jpg"

您可以在此处详细了解:https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/encodeURI

答案 1 :(得分:0)

每当字符串表示为URI时,%20都会替换space 这些%20不应该导致您出现问题,请检查您的路径。

有关此网址编码和解码的详情,请参阅: http://msdn.microsoft.com/en-us/library/zttxte6w.aspx http://msdn.microsoft.com/en-us/library/6196h3wt.aspx

相关问题