Skip to main content
 首页 » 编程设计

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

2024年01月01日53jackei

我一直在尝试使用 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>