0
Image srcをコードの背後から更新しようとしていますが、画像が更新されません。私はImage.Controlを追加したDefault.aspxページを持っています。コントロールは、更新パネル内に配置されます。コードの静的メソッドからイメージsrcを更新するには?
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div id="targetDiv" class="auto-style2" runat="server">
<img id="testID" src="Images/Locations/PERRAN_SANDS.svg" runat="server" />
</div>
</ContentTemplate>
</asp:UpdatePanel>
私のコードの後ろに静的メソッドがあり、そこからイメージsrcを更新しようとしています。
protected void Page_Load(object sender, EventArgs e)
{
Session["ImageControl"] = Page.FindControl("testID");
}
[WebMethod]
public static void GetLocationNames()
{
String siteName = Database.GetsiteNameforTopPlayer();
UpdateImage(siteName);
}
public static string UpdateImage(string imgName)
{
string filename = imgName+ ".svg";
string path = @"Images/Locations/" + filename;
System.Web.UI.HtmlControls.HtmlImage imgControl = new System.Web.UI.HtmlControls.HtmlImage();
imgControl = System.Web.HttpContext.Current.Session["ImageControl"] as System.Web.UI.HtmlControls.HtmlImage;
imgControl.Src = path;
imgControl.DataBind();
}
GetLocationNames()は、jquery関数から呼び出されます。私は、ブレークポイントは私のコードで設定されているおよびSrcの値が更新されますが、変更は、ウェブページに反映されていない
を使用して、Page_Loadイベントで行うことができます?実際にメソッドを実行させるコードは表示されません。 – ADyson
「 」タグをそこに置くとコードビハインドからアクセスできるようになると思います。 –
Sometowngeek
@ADyson:残念ですが、上記のコードでUpdateImage()を呼び出すメソッドを含めるのを忘れてしまいました。 – Sugan88