标签的分配文本不会更新

时间:2015-07-08 10:07:05

标签: c# asp.net updatepanel

所以这是我的函数,用于AJAX调用:

public void Button1_Click(object sender, EventArgs e)
        {
            Button1.Text = "surprise";
            Label1.Text = "surprise!!";
            Label2.Text = "surprise!!";
        }

这是aspx。 Scriptmanager已设置。

    <p>Síðast slóstu inn:
        <asp:Label ID="Label1" runat="server" Text=""></asp:Label>
        <asp:Label ID="Label2" runat="server" Text=""></asp:Label>
    </p>
    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
        <ContentTemplate>
            <asp:TextBox ID="TextBox1" runat="server">asd</asp:TextBox>
            <asp:TextBox ID="TextBox2" runat="server">dsa</asp:TextBox>
            <asp:Button ID="Button1" runat="server" Text="Save" OnClick="Button1_Click" />
        </ContentTemplate>
    </asp:UpdatePanel>

您可以自己查看:http://webapplication44730.azurewebsites.net/data

正如您所看到的,按钮文字更改为“惊喜”,但标签Label1Label2应显示在“旅馆”之后,不会。

1 个答案:

答案 0 :(得分:5)

导致这些标签不在UpdatePanel内,这意味着它们不会从AJAX回调中更新。

围绕需要更新的每个控件设置更新面板:

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
        <p>Síðast slóstu inn:
            <asp:Label ID="Label1" runat="server" Text=""></asp:Label>
            <asp:Label ID="Label2" runat="server" Text=""></asp:Label>
        </p>
        <asp:TextBox ID="TextBox1" runat="server">asd</asp:TextBox>
        <asp:TextBox ID="TextBox2" runat="server">dsa</asp:TextBox>
        <asp:Button ID="Button1" runat="server" Text="Save" OnClick="Button1_Click" />
    </ContentTemplate>
</asp:UpdatePanel>