如何从代码后面的静态方法更新图像src?

时间:2017-07-06 22:19:54

标签: c# html asp.net

我正在尝试从后面的代码更新Image src,但图像没有更新。我有一个Default.aspx页面,其中添加了Image控件。控件放在更新面板中。

<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();
}

从jquery函数调用GetLocationNames()。我在我的代码中设置了断点,并且Src的值得到更新,但更改未反映在网页上

1 个答案:

答案 0 :(得分:0)

甚至可以在page_Load事件中使用

 string filename = imgName+ ".svg";
  string path = @"Images/Locations/" + filename;
testID.Src=path;