2008-10-29 156 views
0

ASP.Net如何生成img標籤有問題。 我有這樣的服務器控件:ASP.NET Img標籤

<asp:Image runat="server" ID="someWarning" ImageUrl="~/images/warning.gif" AlternateText="Warning" /> 

我希望它產生這樣的:

<img id="ctl00_ContentPlaceHolder1_ctl00_someWarning" src="../images/warning.gif" /> 

,而是它會產生這樣的:

<img alt="" src="/Image.ashx;img=%2fimages%2fwarning.gif"</img> 

這給我的錯誤,當我執行以下JS:

document.getElementById('ctl00_ContentPlaceHolder1_someWarning') 

任何想法爲什麼它不會生成預期的HTML?

回答

1

看起來它試圖使用自定義處理程序(ashx)來傳遞圖像。你有任何額外的模塊可能會覆蓋asp:Image的默認行爲嗎?

您的JavaScript不起作用,因爲圖像標籤在生成的HTML中沒有被賦予一個ID。

0

您可以獲得使用ClientID生成的實際ID。我用這個使用類似於下面的語法拿到的一個控件的ID使用JavaScript中:

document.getElementById('<%=ddlCountry.ClientID%>').style.display = "block"; 

然而,你也可以在你使用它的代碼,後面得到同樣的事情。