【问题标题】:How can I make ASP 'datalist' cells expandable/collapsible?如何使 ASP 'datalist' 单元格可展开/可折叠?
【发布时间】:2011-12-28 20:29:10
【问题描述】:

我有一个由DataTable 填充的asp DataList

<asp:PlaceHolder ID="ph3" runat="server">
    <asp:DataList ID="dlspec" runat="server" GridLines="Vertical" OnItemDataBound="dlspec_ItemDataBound">
        <FooterStyle BackColor="#CCCCCC" />
        <AlternatingItemStyle CssClass="alt-grey" />
        <SelectedItemStyle BackColor="#000099" Font-Bold="True" ForeColor="White" />
        <HeaderStyle BackColor="Black" Font-Bold="True" ForeColor="White" />
        <ItemTemplate>
            <table width="320px">
                <tr>
                    <td class="leftcol">
                        <asp:Label ID="lblDimension" runat="server" Text='<%# Eval("Dimension") %>'></asp:Label>:
                    </td>
                    <td class="ProductDetailData">
                        <asp:Label ID="lblName" runat="server" Text='<%# Eval("Attribute") %>'></asp:Label>
                    </td>
                </tr>
            </table>
        </ItemTemplate>
    </asp:DataList> 
</asp:placeholder>

问题是我只需要显示数据列表中的前 5 个元素,我需要隐藏其余的单元格并根据要求使它们“可扩展”。 如何在 DataList 控件中实现这一点?我知道有一些 JQuery 插件可以针对特定的“div”标签使用来实现这一点,但我不知道如何在“DataList 控件”中做到这一点。

很快需要帮助。感谢您的所有宝贵建议。

【问题讨论】:

  • 当您输入问题时,请先查看预览,然后再单击“发布”。您的代码有点...难以阅读 =) 否则,这是个好问题。
  • 感谢您的编辑。感谢您的时间。

标签: c# asp.net datalist collapsiblepanelextender


【解决方案1】:

您需要的是分页。 Here 是一篇向您展示如何完成它的文章。

更新:要使用 jQuery 做客户端,请查看 here。 基本上将一个类添加到 ItemTemplate 中的表和一个显示更多链接,然后在页面中的某处添加 javascript 代码。

在此处添加 jQuery 脚本(假设 row 是您的项目类,而 showMore 是显示更多项目的链接,在这种情况下,所有这些都是为了保持简单):

$(function() {
    $(".row").slice(2).hide();

    $("#showMore").click(function() {
        $(".row").show();
    });
});

您可以进一步使用 slice() 函数来添加更多有趣的行为。

请注意,如果您的页面速度较慢,用户将看到整个表格,并且当页面加载完成后,列表中的大部分行都会消失。为避免在渲染数据列表后立即执行 javascript。

【讨论】:

  • 通过文章...看起来更像是一种分页技术。我需要加载所有项目,但使其可折叠/可扩展。最初隐藏单元格,然后用户可以请求显示其余元素。你知道的其他方法吗?
  • 这是个好建议。它没有太多大惊小怪的工作!感谢您的帮助!
猜你喜欢
  • 2022-07-27
  • 1970-01-01
  • 1970-01-01
  • 2018-07-31
  • 1970-01-01
  • 2019-11-23
  • 1970-01-01
  • 2018-12-13
  • 1970-01-01
相关资源
最近更新 更多