asp.net 中的计时器在本地主机中完美运行但不在线

Timer in asp.net works perfectly in localhost but not online

asp.net 中的计时器在我 运行 本地主机中的应用程序以及当我上传和检查在线计时器时不起作用。

我有一个条件,当用户单击 "Request Item" 按钮时,在标签中消息应显示为 "Submitted successfully",否则 "Some Error Message"。所以,我所做的是,我创建了一个更新面板,并在其中放置了一个带有 2 个标签的提交按钮,一个用于成功消息,另一个用于错误消息。还有一个定时器控件,我将其设置为 2 秒,以便仅显示 2 秒的消息并隐藏它们。

这是我的源代码:

<asp:UpdatePanel ID="UpdatePanel2" runat="server">                                           

  <ContentTemplate>
    <asp:Button ID="btnAdd" runat="server" Text="Request Item" Width="128px" OnClick="btnAdd_Click1" Height="38px" />
    <asp:Label ID="lblSuccess" runat="server" Font-Bold="True" ForeColor="#00CC00"></asp:Label>
    <asp:Label ID="lblErrorMessage" runat="server" Font-Bold="True" ForeColor="Red"></asp:Label>
                                                    <br />
    <asp:Timer ID="Timer1" runat="server" Interval="1000" OnTick="Timer1_Tick1" Enabled="False">
                                                    </asp:Timer>
  </ContentTemplate>
</asp:UpdatePanel>

下面是在 "Request Item" 按钮下触发定时器控件的代码。

lblSuccess.Visible = true;
lblSuccess.Text = "Records Successfully Saved!";
Timer1.Enabled = true;

下面是定时器滴答事件下的代码。

protected void Timer1_Tick1(object sender, EventArgs e)
    {
        txtCount.Text = txtCount.Text + 1;

        if (txtCount.Text == "11")        //Here "11" is counted as each timer tick. 1 for 1 timer tick
        {
            lblSuccess.Visible = false;
            lblErrorMessage.Visible = false;
            Timer1.Enabled = false;
            txtCount.Text = "";
        }
    }

如果您正在使用 ToolScriptManager 尝试在其中添加属性 CombineScript="false" 然后尝试..