我有一个母版页,在顶部我用jquery显示div。在那个div我有一个更新面板,带有一个带有autopostback true的复选框。基本上我想制作一个菜单来更改设置而不需要整页回发。它完美地运行
但我有一个特定的子页面,其中我有一个图库,里面有一个更新面板,里面是一个数据列表,可以在不回发的情况下更改图像。
问题是,当我点击母版页复选框时,子页面上的更新面板也会刷新..为什么会发生这种情况?
对于母版页更新面板,我更新模式到条件, childeren作为触发器到 false ,我为 CheckBox1_CheckChanged 事件设置了 asynchchpostback触发器。
所以我做错了什么......
<asp:UpdatePanel ID="UpdatePanel1" runat="server" ChildrenAsTriggers="False" UpdateMode="Conditional">
<ContentTemplate>
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%">
<tr>
<td style="padding-right: 2px">
<asp:CheckBox ID="CheckBox1" runat="server" AutoPostBack="True" OnCheckedChanged="CheckBox1_CheckedChanged" />
</td>
<td>
notify me of new buzz through email</td>
</tr>
</table>
<asp:HiddenField ID="bmStatus" runat="server" />
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="CheckBox1" EventName="CheckedChanged" />
</Triggers>
</asp:UpdatePanel>
我是否必须在子页面更新面板上设置任何其他设置...如果询问,我将发布子页面更新面板代码!!!
非常感谢
答案 0 :(得分:1)
无论如何,UpdatePanel都是完整的回发。我建议删除ChildrenAsTriggers =“False”,除非你有其他原因需要它。以下是此设置的链接。您可能需要多个UpdatePanel来实现所需的功能。
http://www.asp.net/ajax/documentation/live/mref/P_System_Web_UI_UpdatePanel_ChildrenAsTriggers.aspx