4

所以我有这个复选框列表,我想为其中的元素实现全选功能。我将它放置在 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,这样我只能从代码中更新,但它似乎不起作用。

4

1 回答 1

11

这看起来像一个熟悉的 .NET 错误。在 CheckBoxList 上设置 ClientIDMode=Auto 应该可以解决它

于 2012-06-29T11:03:40.387 回答