如何在webgrid标题单击上导航或调用ajax操作

时间:2014-08-27 09:40:47

标签: c# asp.net-mvc asp.net-mvc-4 webgrid

我在mvc应用程序中动态生成webgrid。我有一个要求,我需要导航到webgrid列标题上的不同页面。现在,网格列标题是超链接,它对网格中的记录进行排序。但是我需要在标题上使用ajax调用去另一个页面点击任何一个帮助我。

这是我动态生成的网格。

@using System.Dynamic
@model List<System.Collections.IDictionary>

<link href="~/Content/grid.css" rel="stylesheet" />

@{
    var result = new List<dynamic>();

    foreach (var emprow in Model)
    {
        var row = (IDictionary<string, object>)new ExpandoObject();
        var eachEmpRow = (Dictionary<string, object>)emprow;

        foreach (KeyValuePair<string, object> keyValuePair in eachEmpRow)
        {
            row.Add(keyValuePair);
        }
        result.Add(row);
    }
    var grid = new WebGrid(result, rowsPerPage: 50);
}

@if (@Model != null)
{
    @grid.GetHtml(
                htmlAttributes: new { id = "grdHoteling" },
                tableStyle: "webgrid-table",
        headerStyle: "webgrid-header",
        footerStyle: "webgrid-footer",
        alternatingRowStyle: "webgrid-alternating-row",
        selectedRowStyle: "webgrid-selected-row",
        rowStyle: "webgrid-row-style",
        mode: WebGridPagerModes.All)
}

请帮忙吗?提前谢谢。

1 个答案:

答案 0 :(得分:1)

这些方面的东西。还有a property that will disable the sorting,但您始终可以在click事件上注册并取消默认行为。之后你可以决定去哪里。您还可以使用this事件回调中的click关键字来获取DOM元素。如果您想要存储其他data-或只是获取有关标题的其他信息,这将非常有用。

$(".webgrid-header").click(function(event){
       event.preventDefault();

       //navigate to your other site
});