0

我有一个简单的 MVC WebGrid。当用户点击一行时,我想根据他点击的行做一些事情。它在 jqGrid 中非常简单,甚至使用 jquery 模板,但我想使用 MVC WebGrid 来正确处理它。

我有以下内容:

<h2>OrderList</h2>
@{
    var grid = new WebGrid(canPage: true, rowsPerPage: 20, canSort: true, ajaxUpdateContainerId: "grid_Orders");
    grid.Bind(Model.Orders, rowCount: Model.TotalOrders, autoSortAndPage: true);
    grid.Pager(WebGridPagerModes.All);
    @grid.GetHtml(htmlAttributes: new { id = "grid_Orders" },
        columns: grid.Columns(
            grid.Column(columnName: "OrderNo", header: "Order No"),
            grid.Column(columnName: "TotalAmountDisplay", header: "Amount", format:@<div style="text-align:right"> R @item.TotalAmountDisplay</div>, canSort: false)
    ));
}

和下面的 jQuery

$(document).ready(function () {
    $("#grid_Orders").delegate("tbody tr", "hover", function () {
        $(this).css("cursor", "pointer");
        $(this).toggleClass("datahighlight");
    });

    $("#grid_Orders").delegate("tbody tr", "click", function () {
        //How do I get the underlying data in this row???
    });

});
4

1 回答 1

0

不幸的是,您需要使用 jQuery 来访问每一行的 html 数据——我知道没有针对它的丰富编程模型(有时也有 MVC 之美哈)

相同的场景在这里适用: MVC WebGrid - How to programatically get the current page, sort column etc

于 2011-05-31T15:13:48.560 回答