c# - MVC 3 WebGrid.Table 页脚参数

标签 c# asp.net-mvc-3 webgrid

我一直在尝试使用 WebGrid 来显示包含网格总计的页脚行。到目前为止,我一直在将总计行附加到结果集中,这部分起作用了。我的问题是,当您排序时,总行也会排序,这是我不想要的。此外,当您在组合中添加分页时,总行位于最后一页。

我注意到有一个方法 WebGrid.Table它接受一个名为 footer 的 System.Func 类型的参数。我在想这可能允许我设置页脚行,但似乎没有关于如何使用它的任何文档。如何使用它?

最佳答案

footer参数需要一个 Razor 模板,就像 format WebGridColumn 的参数:

var grid = new WebGrid(Model);
var cols = new List<WebGridColumn>();
//add some columns
var table = grid.Table(columns: cols, footer: @<text>Footer</text>);
....
....
@table

这将在 tfoot 中呈现单词“Footer”具有单个 td 的元素用colspan等于 List<WebGridColumn> 中的列数.如果您想在某些列下对齐页脚文本,您可以将完整的 HTML 表格传递给 Razor 模板委托(delegate)并相应地设置样式以实现所需的对齐方式,例如:

footer: @<table><tr><td colspan="3">&nbsp;</td><td>footer</td><td>&nbsp;</td></tr></table>

或者,您可以使用 jQuery 创建页脚:

<script>
    $(function () {
        var html = '<tfoot><tr><td colspan="3">&nbsp;</td><td>footer</td><td>&nbsp;</td>';
        $('table').append(html);
    });
</script>

关于c# - MVC 3 WebGrid.Table 页脚参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14944165/

相关文章:

c# - Cosmos DB 响应 404

c# - 如何使用 .NET 将 byte[] 转换为字符串以生成与 SQL Server Convert format 1 或 2 相同的字符串?

c# - Azure Git 部署找不到文件 [Project].dll.licenses 失败

c# - 根据所选地点获取时区

c# - 如何在 MVC Controller 操作后返回 View ?

c# - 位字段的 Enum.GetName()?

asp.net-mvc-3 - 如何自定义asp.net MVC验证消息位置

c# - 编辑器不发送数据给 Controller

asp.net-mvc - ASP.NET MVC 4 - 网络网格。编辑后如何保留页面

css - 我如何使用隐藏电话 Bootstrap 类隐藏特定的 asp.net WebGridColumn/s