2013-05-22 70 views
2

我想获得选定的行“ID”,但它只是失败......我完全不知道这里发生了什么。 MVC HTML代码:MVC Kendo UI Grid =自定义按钮不能返回选定的行ID

@(Html.Kendo().Grid(Model) 
    .Name("grid") 
    .HtmlAttributes(new { style = "margin-top: 5px" }) 
    .Columns(c => 
    { 
     c.Bound(model => model.mgID); 
     c.Command(com => { com.Custom("Edit").Click("Edit");}); 
    }) 
    .Pageable() 
    .Sortable() 
    .Selectable() 
    .DataSource(d => d 
     .Ajax() 
     .PageSize(20) 
     .Model(model => model.Id(i => i.mgID)) 
     .Read(r => r.Action("Manage_Read", "Manage")) 
     .Destroy(o => o.Action("Manage_Destroy", "Manage")) 
    ) 
) 

JavaScript代码:

function Edit() { 

     var grid = $("#grid").data("kendoGrid"); 
     var row = grid.select(); 
     var selectedRowIndex = row.index(); //Return "-1" 
     var dataItem = grid.dataItem(row); //Return "Undefined" 

    } 

请告诉我,我究竟错过了?

回答

1

如果你需要的是获得包含单击“编辑”按钮,该行的DataItem,你可以使用:

function Edit(e) { 
    var dataItem = this.dataItem($(e.target).closest("tr")); 
} 

注:

    click事件的背景下
  • thisgrid
  • 在相同的背景下e.target是你的按钮,所以我们寻找closest表格行。
+0

雅,你是对的....我只是在最后20分钟前发现..非常感谢你 – user2402624

相关问题