Kendo ui 是否有可能(如果有,如何)将一个项目添加到剑道UI网格的列菜单中?

Kendo ui 是否有可能(如果有,如何)将一个项目添加到剑道UI网格的列菜单中?,kendo-ui,kendo-grid,Kendo Ui,Kendo Grid,所以我有一个网格,列上有一个很好的ol'列菜单,带有列的过滤/排序/排除功能,一切都很好 美中不足的是,我希望允许用户重命名一个列标题,而UI中允许重命名的明显位置是在所述的列菜单中 大概是这样的: 其中红色部分只是我点击的另一个选项,并弹出一个小窗口,让我输入一个新标题 这可能吗?我该怎么做 我看到可以自定义,网格演示显示了如何调整弹出窗口中的内容,但我不确定如何添加此项我可以看到如何以编程方式进行重命名,但正是这一点让我感到困惑。我想过滤器的目的是过滤,而不是在网格上进行更改。 但无论如何,

所以我有一个网格,列上有一个很好的ol'列菜单,带有列的过滤/排序/排除功能,一切都很好

美中不足的是,我希望允许用户重命名一个列标题,而UI中允许重命名的明显位置是在所述的列菜单中

大概是这样的:

其中红色部分只是我点击的另一个选项,并弹出一个小窗口,让我输入一个新标题

这可能吗?我该怎么做


我看到可以自定义,网格演示显示了如何调整弹出窗口中的内容,但我不确定如何添加此项我可以看到如何以编程方式进行重命名,但正是这一点让我感到困惑。

我想过滤器的目的是过滤,而不是在网格上进行更改。 但无论如何,我发现这个剑道可以帮助你实现你所需要的


你也可以看看这一点。

我想过滤器的作用是过滤,而不是对网格进行更改。 但无论如何,我发现这个剑道可以帮助你实现你所需要的

您也可以看看这个。

您可以使用。两种可能性:

$("#grid").kendoGrid({
    dataSource: dataSource,
    columnMenu: true,
    columnMenuInit: function (e) {
        var menu = e.container.find(".k-menu").data("kendoMenu");
        var field = e.field;

        // Option 1: use the kendoMenu API ...
        menu.append({
            text: "Rename"
        });

        // Option 2: or create custom html and append manually ..
        var itemHtml = '<li id="my-id" class="k-item k-state-default" role="menuitem">' + 
                       '<span class="k-link"><b>Manual entry</b></span></li>';
        $(e.container).find("ul").append(itemHtml);

        // add an event handler
        menu.bind("select", function (e) {
            var menuText = $(e.item).text();
            if (menuText == "Rename") {
                console.log("Rename for", field);
            } else if (menuText === "Manual entry") {
                console.log("Manual entry for", field);
            }
        });
    }
})
请参见“摆弄两个备选方案”:

您可以使用。两种可能性:

$("#grid").kendoGrid({
    dataSource: dataSource,
    columnMenu: true,
    columnMenuInit: function (e) {
        var menu = e.container.find(".k-menu").data("kendoMenu");
        var field = e.field;

        // Option 1: use the kendoMenu API ...
        menu.append({
            text: "Rename"
        });

        // Option 2: or create custom html and append manually ..
        var itemHtml = '<li id="my-id" class="k-item k-state-default" role="menuitem">' + 
                       '<span class="k-link"><b>Manual entry</b></span></li>';
        $(e.container).find("ul").append(itemHtml);

        // add an event handler
        menu.bind("select", function (e) {
            var menuText = $(e.item).text();
            if (menuText == "Rename") {
                console.log("Rename for", field);
            } else if (menuText === "Manual entry") {
                console.log("Manual entry for", field);
            }
        });
    }
})
请参见“摆弄两个备选方案”:

谢谢您的回复。这些链接用于调整过滤器-我不想对过滤器做任何事情,相反,在菜单中添加一个恰好包含过滤器选项的选项可能我不应该在屏幕截图中打开过滤器-基本上是在菜单的过滤器下方添加一个按钮,该按钮包含过滤器和排序,在每列上显示为箭头。感谢您的回复。这些链接用于调整过滤器-我不想对过滤器做任何事情,相反,在菜单中添加一个恰好包含过滤器选项的选项可能我不应该在屏幕截图中打开过滤器-基本上是在菜单的过滤器下方添加一个按钮,该按钮包含过滤器和排序,在每列上显示为箭头。谢谢-它太有用了:它不太脏,不太容易检查按钮,按它的文本?谢谢-它太有用了:它不太脏,可以通过它的文本来检查按钮点击吗?