簡體   English   中英

asp:UpdatePanel為什么不刷新圖像?

[英]Why doesn't asp:UpdatePanel refresh an Image?

我有以下UpdatePanel,它從ashx處理程序獲取圖像,當刷新頁面時,所有這些都可以正常工作。 但是,當計時器啟動時,標簽會用當前時間刷新,但不會刷新圖像。

<asp:UpdatePanel runat="server" id="TimedPanel" UpdateMode="Conditional">
    <ContentTemplate>
         <asp:Image ID="Image1" runat="server"  Height="218px" 
            ImageUrl="~/getImage.ashx?cam=1" Width="303px" BorderWidth="10px" />
        <asp:Timer ID="UpdateTimer" runat="server" interval="1250" 
            ontick="UpdateTimer_Tick" />
        <asp:Label ID="DateStampLabel" runat="server" />
    </ContentTemplate>
   <Triggers>
        <asp:AsyncPostBackTrigger controlid="UpdateTimer" eventname="Tick" />
    </Triggers>
</asp:UpdatePanel>

計時器例程是:

protected void UpdateTimer_Tick(object sender, EventArgs e)
{
    DateStampLabel.Text = DateTime.Now.ToString();
}

為什么圖像沒有刷新?

一般來說,AJAX實際上很容易瀏覽器緩存。 我通常在URL中添加一個DateTime.Now.Ticks 另外,您的UpdateMode是有條件的,您必須調用Update()

protected void UpdateTimer_Tick(object sender, EventArgs e)
{
    DateStampLabel.Text = DateTime.Now.ToString();
    Image1.ImageUrl += "&CacheBuster=" + DateTime.Now.Ticks.ToString();
    TimedPanel.Update();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM