如何在第三列和没有标题的情况下呈现webgrid

时间:2016-06-11 15:45:49

标签: jquery asp.net-mvc asp.net-mvc-4 razor webgrid

ASP.NET MVC4 Razor应用程序页面包含表。 表前两列有固定名称。其他列具有从数据透视表动态创建的变量名称。

下面的代码呈现所有列并使用属性名称创建表头。

如何从第三列开始渲染表,所以前两列没有显示? 如何在没有列标题的情况下呈现表格?

查看:

@inherits ViewBase<ViewModels.CustomerCardViewModel>

@{
var gd = new WebGrid(source: Model.Rows.Skip(1), canPage: false, canSort: false, rowsPerPage: 1000);
}

<!DOCTYPE HTML>
<html>
... head skipped
<body>
        @gd.GetHtml()
    </div>
    <hr />
</body>
</html>

视图模型:

    public class CustomerCardViewModel : ViewModelBase
    {
        public IEnumerable<dynamic> Rows { get; set; }
...
}

使用ASP.NET MVC4,Razor,Bootstrap 3,jquery。

1 个答案:

答案 0 :(得分:1)

1.渲染没有列标题的表:

   @gd.GetHtml(
        displayHeader:false
    )

2.要隐藏列 - 如果你有一个静态的列列表,你可以使用How to hide a column in the Webgrid in aspasp.net MVC?但如果它是动态的,那么只需用jQuery编写一个小函数来隐藏所需的列:

$('.table tr').each(function () {
    var tr = $(this);
    var children = tr.children();
    $(children[0]).hide();
    $(children[1]).hide();
});