我将以下控件放入更新面板中,以使整个页面不会刷新。单击按钮时,页面不会刷新,但是当我尝试更改单选按钮时,页面将刷新并引起完整的回发。这是我的代码:
<ajaxToolkit:ToolkitScriptManager ID="ToolkitScriptManager" runat="Server" EnablePartialRendering="true" />
<asp:UpdatePanel ID="updatePanelToggle" runat="server">
<ContentTemplate>
<asp:RadioButton ID="radioOn" AutoPostBack="true" runat="server" GroupName="toggle" Text="On" OnCheckedChanged="radioOn_CheckedChanged" />
<asp:RadioButton ID="radioOff" AutoPostBack="true" runat="server" GroupName="toggle" Text="Off" OnCheckedChanged="radioOff_CheckedChanged" />
<asp:Button ID="testButton" runat="server" OnClick="mybutton_click"/>
</ContentTemplate>
</asp:UpdatePanel>
最佳答案
根据您的要求,您可以通过添加触发器来控制回发。当您只想更新更新面板内容时,请使用AsyncPostBackTrigger。如果需要完整回发,请使用PostBackTrigger。
<asp:UpdatePanel ID="updatePanelToggle" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:RadioButton ID="radioOn" AutoPostBack="true" runat="server" GroupName="toggle" Text="On" OnCheckedChanged="radioOn_CheckedChanged" />
<asp:RadioButton ID="radioOff" AutoPostBack="true" runat="server" GroupName="toggle" Text="Off" OnCheckedChanged="radioOff_CheckedChanged" />
<asp:Button ID="testButton" runat="server" OnClick="mybutton_click"/>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="radioOn" />
<asp:AsyncPostBackTrigger ControlID="radioOff" />
<asp:PostBackTrigger ControlID="testButton" />
</Triggers>
</asp:UpdatePanel>
关于c# - Updatepanel中的单选按钮导致回发,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10192860/