2012-12-11 76 views
0

我試圖在<asp:image>控件上加載圖像。在網頁上加載圖像

問題是圖像的路徑被保存在數據庫中,並且一些圖像名稱包含空白。例如「圖片名稱編號2.jpg」。

當我設置的ASP控制的ImageUrl屬性,它可以沒有任何麻煩地分配,但在HTML加載時顯示的URL,如下圖所示:

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

因爲那些「% 20「它無法找到圖片,因此無法顯示。

我能做些什麼來解決這個問題?

+0

%20代表URL中的空格...你不能刪除空格嗎?你的圖像名稱? – Ian

+0

最好的選擇是重新命名圖像。用下劃線或連字符替換空格。儘管如此,您不應該從計算機上的C驅動器引用圖像。 –

+0

不,我正在做一個已經存在於桌面的系統的網頁,如果我在那裏改變一些東西,桌面系統會崩潰 –

回答

1

%20部分實際上是空格字符。

//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" 

就可以就可以很容易地通過傳遞URL在JavaScript中刪除它decodeURI()在這裏閱讀更多關於它的信息:https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/encodeURI

0

只要字符串表示爲URI,%20預計將替代space
這些%20 s不應該導致你的問題,檢查你的路徑。

有關這一下到URL編碼和解碼的更多信息: http://msdn.microsoft.com/en-us/library/zttxte6w.aspx http://msdn.microsoft.com/en-us/library/6196h3wt.aspx