Razor Telerik UI网格传递ID到剑道上下文菜单

Razor Telerik UI网格传递ID到剑道上下文菜单,razor,telerik,kendo-grid,kendo-contextmenu,Razor,Telerik,Kendo Grid,Kendo Contextmenu,我有一个简单的上下文菜单,我需要能够连接到网格中。此上下文菜单需要允许用户根据与其关联的网格记录的ID进行导航 我目前正在尝试传递一个HTML数据对象,但它似乎没有按预期工作 有人知道如何推断身份证吗? 这是一个自我包含的例子,说明我正在努力实现的目标 @model IList<EmployeeModel> <script> $(document).ready(function () { setTimeout(function () {

我有一个简单的上下文菜单,我需要能够连接到网格中。此上下文菜单需要允许用户根据与其关联的网格记录的ID进行导航

我目前正在尝试传递一个HTML数据对象,但它似乎没有按预期工作

有人知道如何推断身份证吗? 这是一个自我包含的例子,说明我正在努力实现的目标

@model IList<EmployeeModel>

<script>
    $(document).ready(function () {
        setTimeout(function () {
            var menu = $("#adminContextMenu"),
                original = menu.clone(true);

            original.find(".k-state-active").removeClass("k-state-active");

            var initMenu = function () {
                menu = $("#adminContextMenu").kendoContextMenu({
                    orientation: 'vertical',
                    alignToAnchor: true,
                    filter: ".adminContextMenu",
                    showOn: "click",
                    animation: {
                        open: {
                            effects: "fadeIn"
                        },
                        duration: 250
                    },
                    select: function (e) {
                        console.log(e);
                    }
                });
            };

            initMenu();
        }, 0);
    });
</script>

<ul id="adminContextMenu">
    <li>Super Long Context Option One</li>
    <li class="k-separator"></li>
    <li>Alpha</li>
    <li>Bravo</li>
    <li>Charlie</li>
</ul>

<div id="clientsDb">
    @(Html.Kendo().Grid(Model)
          .Name("employeeGrid")
          .Columns(columns =>
          {
              columns.Bound(user => user.FullName);
              columns.Bound(user => user.UserGUID)
                     .Width(40)
                     .ClientTemplate("<span><img src='" + @Web_Helpers.StratosphereImageUrl("@Pencil_Icon ") + "' Title='Administration' Class='adminContextMenu' Data-Guid='#= UserGUID #' /></span>")
                     .Title(" ");
          })
          .HtmlAttributes(new {style = "height: 380px;"})
          .Scrollable()
          .Groupable()
          .Sortable()
          .Pageable(pageable => pageable
              .Refresh(true)
              .PageSizes(true)
              .ButtonCount(5))
          .DataSource(dataSource => dataSource
              .Ajax().ServerOperation(false))
    )
</div>
@model-IList
$(文档).ready(函数(){
setTimeout(函数(){
变量菜单=$(“#adminContextMenu”),
原始=menu.clone(真);
原始.find(“.k-state-active”).removeClass(“k-state-active”);
var initMenu=函数(){
菜单=$(“#adminContextMenu”).kendoContextMenu({
方向:'垂直',
是的,
筛选器:“.adminContextMenu”,
showOn:“点击”,
动画:{
开放式:{
效果:“法登”
},
持续时间:250
},
选择:功能(e){
控制台日志(e);
}
});
};
initMenu();
}, 0);
});
  • 超长上下文选项一
  • 阿尔法
  • 好极了
  • 查理
@(Html.Kendo().Grid(模型) .名称(“员工网格”) .列(列=> { columns.Bound(user=>user.FullName); columns.Bound(user=>user.UserGUID) .宽度(40) .ClientTemplate(“”) .标题(“”); }) .HtmlAttributes(新的{style=“height:380px;”}) .Scrollable() .Groupable() .Sortable() .Pageable(Pageable=>Pageable .刷新(真) .页面大小(真) .按钮计数(5)) .DataSource(DataSource=>DataSource .Ajax().ServerOperation(false)) )
提供ClientTemplate具有数据属性

.ClientTemplate("<span><img src='img/settings.png' Title='Administration' Class='adminContextMenu' Data-Guid='#= UserGUID #' /></span>")
select: function (e) {
    console.log(e.target.dataset.guid);
}