如何在Kendo UI Grid ClientTemplate中创建条件按钮?

时间:2016-10-24 15:19:12

标签: javascript razor kendo-grid kendo-asp.net-mvc telerik-mvc

我的网格中有两列,

columns.Bound(c => c.EndDateTime).Format(value: "{0:d}").Title(text: "End");

columns.Bound(c => c.LeaveRequestId).ClientTemplate("<a href='" + Url.Action(actionName: "Edit", controllerName: "Leave") + "/#= LeaveRequestId #' class='btn btn-primary btn-xs'>Edit</a>").Title(text: " ").Width(pixelWidth: 50);

我想要做的是让当前时间仍然在EndDateTime之前时,编辑按钮(第二行代码)显示一个按钮。我不知道在ClientTemplate中使用javascript,或者在底部有一个函数,以及它是如何工作的更好。

谢谢!

1 个答案:

答案 0 :(得分:1)

这应该有效:

columns.Bound(c => c.LeaveRequestId)
    .ClientTemplate(
        "# if ((new Date()) < EndDateTime) { #" +
            "<a href='" + Url.Action(actionName: "Edit", controllerName: "Leave") + "/#= LeaveRequestId #' class='btn btn-primary btn-xs'>Edit</a>" +
        "# } #"
    )
    .Title(text: " ")
    .Width(pixelWidth: 50);

您可以将比较放在一个函数中,但这取决于您(并且可能取决于比较逻辑的复杂程度)。