MVC Kendo UI Grid = 自定义按钮无法返回选定的行 ID
Posted
技术标签:
【中文标题】MVC Kendo UI Grid = 自定义按钮无法返回选定的行 ID【英文标题】:MVC Kendo UI Grid = Custom Button can't return selected row id 【发布时间】:2013-05-17 06:37:57 【问题描述】:我想获得选定的行“ID”,但它失败了......我完全不知道这里发生了什么。 MVC html 代码:
@(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】:如果您只需要获取包含单击的“编辑”按钮的行的数据项,您可以使用:
function Edit(e)
var dataItem = this.dataItem($(e.target).closest("tr"));
注意:
在click
事件的上下文中this
是grid
。
在相同的上下文中,e.target
是您的按钮,因此我们查找 closest
表格行。
【讨论】:
以上是关于MVC Kendo UI Grid = 自定义按钮无法返回选定的行 ID的主要内容,如果未能解决你的问题,请参考以下文章
如何在 kendo.ui.grid 中创建自定义 kendo.ui.Window 以进行编辑
Kendo UI MVC Grid DataSourceRequest JavaScript 发布附加数据
Kendo UI MVC——如何获得更灵活的网格自定义命令?