在我的Kendo Grid中,我有一个列,我想要包含一个按钮。
单击此按钮,我想在网格中填充一个字段(称为TradesmanId),其中包含一个可用于javacript函数的ID(它是已登录用户的ID)。
此ID应位于字段中,直到调用网格上的保存更改事件为止。
我曾考虑像这样定义列,但我想知道命令列是否会更好用?
.Columns(trdcol =>
{
trdcol.Bound(f => f.TradeHrs).Title("Man Hours").Width(45);
trdcol.Bound(f => f.TradeDate).Title("Time Date").Width(77).ClientTemplate("#= kendo.toString(TradeDate, 'hh:mm dd/MM/yyyy') #");
trdcol.Bound(p => p.TradesmanId).ClientTemplate("<button id='button' class='k-button'><span class='k-icon k-i-check-outline'></span> #= TradesmanId#</button>").Title("Signature").Width(85);
})
答案 0 :(得分:0)
你做的很好。您只需在按钮中添加一个类,然后添加一个单击处理程序即可执行以下操作:
$(document).on("click", "buttton.my-class", function(e) {
var grid = $("#grid").data("kendoGrid");
var dataItem = grid.dataSource.getByUid($(this).closest("tr").data("uid"));
dataItem.TradesmanId = getLoggedInUserId(); //your javascript function returning the user id
grid.refresh();
})