0

asp.netでResponse.Writeを使用してhtmlを書き込むと、画像が表示されません。画像のパスコードを確認し、ページに配置するだけで問題なく動作します。response.writeコードを使用して書き込むときに画像が表示されない理由。以下は私の画像パスコードです

<img alt="" src="<%= VirtualPathUtility.ToAbsolute("~/Content/images/txt2.png")%>" border="0"/>

これはResponse.writeコードです

<% Response.Write(valueHelp); %>

ValueHelpは、上記で説明した画像コードを含む文字列です。

なぜそれが機能しないのか考えていますか?前もって感謝します

4

2 に答える 2

2

<%= %>コードビハインドではなく、マークアップ(つまり、コードのHTML部分)内で使用されます。

私の推測では(コードを見ずに)、実際に<%= VirtualPathUtility.ToAbsolute("~/Content/images/txt2.png")%>は静的な文字列の一部としてブラウザーに送信していると思います。

したがって、サーバーによって取得されて正しいパスにレンダリングされるのではなく、HTMLの一部としてブラウザーに送信されるだけです(ブラウザーはそれが何を意味するのかわからないため、期待する画像は表示されません) )。

valueHelp文字列を作成するときに、このようなことを試してください

valueHelp = "<img alt='' src='" + VirtualPathUtility.ToAbsolute("~/Content/images/txt2.png") + "' border='0'/>";
于 2012-07-20T12:50:58.237 に答える
1

これを試して

<% Response.Write("<img alt='' src='" +
    VirtualPathUtility.ToAbsolute("~/Content/images/txt2.png") +
 "' border='0'/>" ); %>
于 2012-07-20T12:49:10.823 に答える