Asp.net 选中复选框时UpdatePanel内发生回发
我有一个Asp.net 选中复选框时UpdatePanel内发生回发,asp.net,ajax,listview,updatepanel,postback,Asp.net,Ajax,Listview,Updatepanel,Postback,我有一个列表视图,里面有一个复选框,其中自动回发设置为真,我还有一个可折叠的面板保存在同一列表视图中,与此复选框相邻 整个内容都保存在一个UpdatePanel中,用于无提示回发。现在我的问题是,即使它被保存在UpdatePanel中,当我单击复选框时,整个页面都会刷新。我需要使用无声回发来完成。我怎样才能做到这一点 <asp:ListView ID="ListViewGroups" runat="server" onitemdatabound="ListView1_It
列表视图
,里面有一个复选框
,其中自动回发
设置为真
,我还有一个可折叠的面板保存在同一列表视图
中,与此复选框
相邻
整个内容都保存在一个UpdatePanel
中,用于无提示回发。现在我的问题是,即使它被保存在UpdatePanel
中,当我单击复选框时,整个页面都会刷新。我需要使用无声回发来完成。我怎样才能做到这一点
<asp:ListView ID="ListViewGroups" runat="server"
onitemdatabound="ListView1_ItemDataBound">
<EmptyDataTemplate>
<table runat="server" style="">
<tr>
<td>
No data was returned.</td>
</tr>
</table>
</EmptyDataTemplate>
<ItemTemplate>
<tr style="">
<td>
<asp:Panel ID="PanelContainer" runat="server" Width="400px">
<asp:Panel ID="PanelHeaderList" runat="server" Width="20px">
<div style="float:left;" >
<asp:ImageButton ID="Image1" runat="server"
ImageUrl="~/expand_blue.jpg"
AlternateText="(Show Details...)"/>
</div>
</asp:Panel>
<div style="float:left;" >
<asp:CheckBox ID="CheckBox1" runat="server"
AutoPostBack="true" />
<asp:Label ID="Grp_NameLabel" runat="server"
Text='<%# Eval("Grp_Name") %>' />
<asp:HiddenField ID="hfGrpID" runat="server"
Value='<%#Eval("Grp_ID") %>' />
</div>
<br />
<p>
<asp:Panel ID="PanelGroupsItem" runat="server"
Width="100px" >
<asp:Panel ID="MyGroups" runat="server"
ScrollBars="Vertical"
Height="200px"
Width="300px"
Visible='<%# GetFlag(Convert.ToInt32(Eval("Grp_ID"))) %>'>
//Another Normal gridView here just showing some data
</asp:Panel>
</asp:Panel>
<asp:CollapsiblePanelExtender ID="CollapsiblePanelExtender1"
runat="server"
Collapsed="true"
TargetControlID="PanelGroupsItem"
CollapseControlID="PanelHeaderList"
ExpandControlID="PanelHeaderList"
ImageControlID="Image1"
ExpandedImage="~/collapse_blue.jpg"
CollapsedImage="~/expand_blue.jpg"
SuppressPostBack="true"
>
</asp:CollapsiblePanelExtender>
</asp:Panel>
</p>
</td>
</tr>
</ItemTemplate>
<LayoutTemplate>
<table runat="server">
<tr runat="server">
<td runat="server">
<table ID="itemPlaceholderContainer" runat="server"
border="0" style="">
<tr runat="server" style="">
<th runat="server">
Groups</th>
</tr>
<tr ID="itemPlaceholder" runat="server">
</tr>
</table>
</td>
</tr>
<tr runat="server">
<td runat="server" style="">
</td>
</tr>
</table>
</LayoutTemplate>
</asp:ListView>
没有返回任何数据。
//这里的另一个普通gridView只是显示一些数据
组
请在这方面帮助我我在这里找到了类似问题的解决方案:
您需要将复选框的ClientID模式设置为AutoID updatepanel上设置了哪些属性?我尝试了Conditional和Always。。但它不起作用。我没有设置任何其他属性您应该包括Updatepanel
的标记,因为它可能是导致问题的原因。此外,您所谓的“静默回发”被称为“异步回发”。