Asp.net 更新面板中的更新控件
我使用带有一些控件的updatepanel,当我点击按钮时,创建一个睡眠。在这一次我点击第二个按钮,按钮处理程序成功执行异步。但其中一个标签不更新 我在更新面板中有两个标签,当点击btnPostF按钮,然后点击BTNPOST按钮, 只有标签2在更新面板中更新,而标签2不更新Asp.net 更新面板中的更新控件,asp.net,ajax,updatepanel,Asp.net,Ajax,Updatepanel,我使用带有一些控件的updatepanel,当我点击按钮时,创建一个睡眠。在这一次我点击第二个按钮,按钮处理程序成功执行异步。但其中一个标签不更新 我在更新面板中有两个标签,当点击btnPostF按钮,然后点击BTNPOST按钮, 只有标签2在更新面板中更新,而标签2不更新 <body> <form id="form1" runat="server"> <asp:ScriptManager ID="ScriptManager1" runat
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
<asp:UpdatePanel ChildrenAsTriggers="true" ID="UpdatePanel1" runat="server" >
<contenttemplate>
<asp:Button runat="server" Text="PostBackFirst" ID="btnPostF"
onclick="btnPostF_Click"/>
<asp:Button runat="server" Text="PostBackSecond" ID="btnPostS"
onclick="btnPostS_Click"/>
<asp:Button runat="server" Text="AbortPostBack" ID="btnAbort"
OnClientClick="Sys.WebForms.PageRequestManager.getInstance().abortPostBack();
alert('Postback Cancelled');"/>
<asp:Label ID="Label1" runat="server" Text="">
<asp:Label ID="Label2" runat="server" Text="">
</contenttemplate>
</form>
</body>
protected void btnPostF_Click(object sender, EventArgs e)
{
System.Threading.Thread.Sleep(4000);
Label1.Text = "PostBack 1 Completed";
}
protected void btnPostS_Click(object sender, EventArgs e)
{
System.Threading.Thread.Sleep(4000);
Label2.Text = "PostBack 2 Completed";
}
受保护的无效btnPostF_单击(对象发送者,事件参数e)
{
系统线程线程睡眠(4000);
Label1.Text=“回发1已完成”;
}
受保护的无效btnPostS\u单击(对象发送方,事件参数e)
{
系统线程线程睡眠(4000);
Label2.Text=“回发2已完成”;
}
如果您在客户端(您的浏览器)等待完成第一个请求时进行第二次回发(通过单击第二个按钮)。只要你们点击第二个按钮,你们的第一个请求就会被客户端中止。所以您只能看到第二个请求的结果
在您的示例中,如果先单击第二个按钮,然后单击第一个按钮,您将看到label1上的值,而不是label2上的值
希望这有帮助
Ims这是什么意思:“…更新面板中只有标签2要更新,而标签2不更新!!”??