UpdatePanel内的Checkboxlist会在选中项目时触发完全回发

时间:2012-06-29 10:59:28

标签: asp.net updatepanel postback checkboxlist partial-postback

所以我有这个Checkboxlist,我想为其中的元素实现Select All功能。我将它放在UpdatePanel中,但每次单击一个项目时,都会重新加载整个页面。这是我的代码:

 <asp:UpdatePanel ID="CBLPanel" runat="server" UpdateMode="Conditional"     ChildrenAsTriggers="false">
            <ContentTemplate>
                <div class="LeftAligned">
                    <asp:Label ID="FilterLabel" runat="server" Text="Filter by:" />
                    <asp:DropDownList runat="server" ID="FilterDDL" AutoPostBack="true" OnSelectedIndexChanged="FilterDDL_SelectedIndexChanged" />
                    <asp:ImageButton ID="FB" runat="server" ImageUrl="~/images/filter.png" AlternateText="VALUE"
                        CssClass="filter_button" OnClick="FB_Click" />
                    <div onmouseout="javascript:bMouseOver=false;" onmouseover="javascript:bMouseOver=true;"
                        class="filter_div">
                        <asp:CheckBoxList AutoPostBack="true" ID="FilterCheckBoxList" ClientIDMode="Static"
                            runat="server" CssClass="filter_checklist collapsed" OnSelectedIndexChanged="FilterCheckBoxList_Selected">
                        </asp:CheckBoxList>
                    </div>
                </div>
            </ContentTemplate>
                    </asp:UpdatePanel>

我虽然我应该将ChildrenAsTriggers设置为false,这样我只会从代码中更新,但它似乎不起作用。

1 个答案:

答案 0 :(得分:10)

这看起来像一个熟悉的.NET Bug。在CheckBoxList上设置ClientIDMode = Auto应该修复它