簡體   English   中英

在功能中間進行Ajax面板更新

[英]Ajax panel update during the middle of a function

在C#ASP.net功能站點的中間進行Ajax面板更新。

這是單擊按鈕。 我想在其余功能繼續之前將LbError.Text更新為“”。 這是我當前的代碼。

   protected void BUpload_Click(object sender, EventArgs e)
        {
            LbError.Text = "";

            UpdatePanel1.Update(); //// need it to update here before it moves on 
                                   but it waits till the end to update the lablel
        Exicute functions.....
        .......
        .......
        }





<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<contenttemplate> 
<asp:Label ID="LbError" runat="server" CssClass="failureNotification" Text=""></asp:Label>
<br /><br />
<br /><br />
    <asp:TextBox ID="NewData" runat="server"></asp:TextBox><br />
    then click
    <asp:Button ID="BUpload" runat="server" Text="Upload New Data" 
        onclick="BUpload_Click"/><br />

我嘗試過的事情包括擁有另一個UpdatePanel,並且結果相同。 任何幫助將不勝感激。

您可以使用PageRequestManager來完成這項工作。 這是工作示例。 標記:

<asp:ScriptManager ID="sm" runat="server" />
        <script type="text/javascript">
            var prm = Sys.WebForms.PageRequestManager.getInstance();
            prm.add_initializeRequest(InitializeRequest);
            function InitializeRequest(sender, args) {
                $get('LbError').textContent = '';
            }
        </script>
        <asp:Label ID="LbError" runat="server" CssClass="failureNotification" Text="This is a label"></asp:Label>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
            <ContentTemplate>
                <br />
                then click
                <asp:Button ID="BUpload" runat="server" Text="Upload New Data"
                    OnClick="BUpload_Click" /><br />

                <asp:Label ID="Label1" runat="server" CssClass="failureNotification" Text=""></asp:Label>
            </ContentTemplate>
        </asp:UpdatePanel>

和C#背后的代碼:

protected void BUpload_Click(object sender, EventArgs e)
{
    UpdatePanel1.Update(); 
    System.Threading.Thread.Sleep(5000);
    Label1.Text = "Done";
}

暫無
暫無

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

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