加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

使用UpdatePanel单击按钮后更新ASP.NET标签

发布时间:2020-12-16 03:53:54 所属栏目:asp.Net 来源:网络整理
导读:当我点击ASP.NET页面中的按钮时,我试图发生两件事: 更改ASP:Label中的文本. 禁用按钮. 我对此做了很多研究,但我也遇到了困难. 对于#1,我认为这应该有效,但它没有: %@ Page Language="VB" %!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
当我点击ASP.NET页面中的按钮时,我试图发生两件事:

>更改ASP:Label中的文本.
>禁用按钮.

我对此做了很多研究,但我也遇到了困难.

对于#1,我认为这应该有效,但它没有:

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">


    Protected Sub BtnSubmit_Click(sender As Object,e As System.EventArgs)
        Label1.Text = "Working..."

        System.Threading.Thread.Sleep(5000)

        Label1.Text = "Done."

    End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Test Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <ajaxToolkit:ToolkitScriptManager runat="server" />
    <div>
        <asp:ListBox runat="server" Height="100px" />
        <br />
        <asp:UpdatePanel runat="server">
            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="BtnSubmit" EventName="Click" />
            </Triggers>
            <ContentTemplate>
                <asp:Label ID="Label1" runat="server" Text="Press the button" />
            </ContentTemplate>
        </asp:UpdatePanel>
        <br />
        <asp:Button runat="server" ID="BtnSubmit" OnClick="BtnSubmit_Click" Text="Submit Me!" />
    </div>
    </form>
</body>
</html>

永远不会显示“正在工作…”消息.

至于#2,我把它添加到按钮(我忘了我发现的地方):

OnClientClick="this.disabled = true; this.value = 'Working...';"
            UseSubmitBehavior="false"

这具有禁用按钮和更改其文本(值)的预期效果,但无法使用“文本”和“启用”属性将其更改回来.

解决方法

即使您使用UpdatePanel,ASP也不会在工作时将结果刷新到浏览器.它会在冲洗前完成工作(包括睡眠).

您可以使用UpdateProgress来显示“Working ..”文本.

<asp:UpdateProgress>

这将在UpdatePanel工作时显示其内容. UpdatePanel完成后,内容将消失.

你需要什么ClickEvent是:

Label1.Text = "Done."
btnSubmit.Enabled = false

这将显示完成文本并禁用该按钮.并告诉UpdateProgress消失.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读