【问题标题】:How to make footable pagination work with asp.net gridview?如何使用 asp.net gridview 进行可足分页?
【发布时间】:2014-06-26 20:21:12
【问题描述】:

Footable 是 jQuery 响应式数据表的插件,当我尝试将它与 asp.net GridView 组件一起使用时,我无法将分页插件附加到表的底部。

Footable 教程说要在表格的 tfoot 元素中添加自定义 div

<div class="pagination pagination-centered hide-if-no-paging"></div>

但问题是,如何将这个自定义的 html 放在 tfoot 标签中,因为 GridView 会自动生成整个 html?您不能简单地将 html 与 asp.net 放在一起,因此我必须制定一种解决方法来在 tfoot 中生成代码。我希望它会在未来对某人有所帮助,因为我没有找到任何类似的解决方案来解决这个特定问题。

【问题讨论】:

  • 请留下评论,说明拒绝投票的原因 t_t,我是新手,想帮助大家,我在问答环节做错了吗?
  • 我没有投反对票,但是如果您没有出示您为解决此问题所做的工作的证据,人们通常会感到恼火。因此,显示您的代码示例并解释脚本到底在哪里不工作可能会有所帮助。
  • 谢谢@crafter,我做了一些版本,希望能好一点。
  • 太好了,您将解决方案作为答案发布回来,并添加了链接和示例代码。我因此投票赞成以平衡您的反对票。 ;)

标签: asp.net pagination footable


【解决方案1】:

为了解决这个问题,我采用了我在这里找到的方法:ASP.NET GridView Newbie Questions About TFOOT and TH

要包含分页所需的自定义 div 标签,结果是:

    protected void onRowCreate(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.Footer)
        {
            int colSpan = e.Row.Cells.Count;

            for (int i = (e.Row.Cells.Count - 1); i >= 1; i -= 1)
            {
                e.Row.Cells.RemoveAt(i);
                e.Row.Cells[0].ColumnSpan = colSpan;
            }

            e.Row.Cells[0].Controls.Add(new LiteralControl("<ul class='pagination pagination-centered hide-if-no-paging'></ul>"));
        }
    }

所以在 GridView 声明中调用它,在 'onRowCreated'

 <asp:GridView ID="gridViewClientes" ShowFooter="true" OnRowCreated="onRowCreate">

不要忘记在 tablePrerender 上调用它,以正确创建 TFOOT:

gridViewClientes.FooterRow.TableSection = TableRowSection.TableFooter;

注意:我实际上必须将 DIV 元素从可脚注示例更改为 UL 元素才能正常工作。

【讨论】:

    猜你喜欢
    • 2010-10-16
    • 2017-04-13
    • 2015-12-01
    • 1970-01-01
    • 2012-01-04
    • 1970-01-01
    • 1970-01-01
    • 2010-09-06
    相关资源
    最近更新 更多