在UpdatePanel中更新标签

时间:2012-03-29 23:56:06

标签: asp.net updatepanel label

我在更新面板中有一个标签和按钮,当我尝试从按钮单击的标签上获取值时,我从标签获取值,但是当我尝试将值设置为标签时,它不会发生了,我检查了JavaScript错误,但没有,有没有人有任何猜测可能是什么原因。我正在使用dotnetnuke,这是我的代码

<asp:UpdatePanel ID="updSection6" runat="server"><ContentTemplate>
<asp:Label ID="lbl" runat="server" />
<asp:ImageButton ImageUrl="/images/edit.gif" ID="btnEditSectionStory6" runat="server" OnClick="Clicked" />
</ContentTemplate></asp:UpdatePanel>

这是代码

protected void Clicked(object sender, EventArgs e)
{
   lbl.Text="Welcome";
}

1 个答案:

答案 0 :(得分:6)

您需要添加以下代码

<Triggers>
    <asp:PostBackTrigger ControlID="btnEditSectionStory6" />
</Triggers>

在您关闭之前</asp:UpdatePanel>

所以你的代码应该是这样的:

<asp:UpdatePanel ID="updSection6" runat="server">
    <ContentTemplate>
        <asp:Label ID="lbl" runat="server" />
        <asp:ImageButton ImageUrl="/images/edit.gif" ID="btnEditSectionStory6" runat="server" OnClick="Clicked" />
    </ContentTemplate>
    <Triggers>
        <asp:PostBackTrigger ControlID="btnEditSectionStory6" />
    </Triggers>
</asp:UpdatePanel>

ASP PostBackTrigger

  

指定将导致整页更新的控件和事件(a   整页刷新)。此标记可用于强制完全刷新   否则控件会触发部分渲染。

您可以read more了解UpdatePanel's and Triggers here

C#(使用ImageClickEventArgs)

    protected void Clicked(object sender, ImageClickEventArgs e)
    {
        lbl.Text = "Welcome";
    }