2011-05-31 33 views
0

我有一個簡單的MVC WebGrid。當用戶點擊一行時,我想根據他點擊的行來做一些事情。它在jqGrid中非常簡單,甚至使用jquery模板,但我想使用MVC WebGrid來正確使用它。如何使用jQuery獲取MVC3 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??? 
    }); 

}); 
+0

我設法弄到了OrderNo,但我確定這不是正確的做法 $(「#grid_Orders」)。delegate(「tbody tr」,「click」,function( ){ alert($(this).children(':first-child')。html()); }); – 2011-05-31 09:58:03

回答

0

不幸的是,你需要以訪問每行的HTML數據使用jQuery - 沒有針對沒有豐富的編程模型它知道(MVC的時代以及哈美)

相同的情況在這裏適用: MVC WebGrid - How to programatically get the current page, sort column etc

+0

如果您使用json並綁定到可以訪問源數據的網格,希望模板/數據綁定團隊在不久的將來可以獲得一些幫助 – 2011-06-01 09:18:05

+0

的輸入。不確定webgrid是否支持這個功能,但是teleriks是否支持這個功能 - 這是一個100倍的網格imho和免費的。 – 2011-06-01 15:58:59