我的页面上有两个asp.net更新面板。其中一个有一个复选框,另一个有一些标签。我想在选中/取消选中复选框时更新第二个updatepanel的内容。我使用以下代码:
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm._doPostBack('UpdatePanel2', '');
但它正在回复整页。
请提出解决方案。
答案 0 :(得分:1)
您可以将复选框的AutoPostback设置为True并使其成为第二个UpdatePanel的触发器:
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" AutoPostBack="True" />
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpdatePanel2" runat="server">
<ContentTemplate>
<asp:Label ID="Label2" runat="server" Text="Label"></asp:Label>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="CheckBox1" EventName="CheckedChanged" />
</Triggers>
</asp:UpdatePanel>
然后你可以在复选框的“CheckedChanged”事件处理程序中添加标签更改代码,例如
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{
Label2.Text = DateAndTime.Now;
}
答案 1 :(得分:0)
看来你正在寻找更新面板触发器,你不需要通过javascript触发它......