Javascript 剑道UI网页菜单,更改菜单文本

Javascript 剑道UI网页菜单,更改菜单文本,javascript,menu,kendo-ui,Javascript,Menu,Kendo Ui,我需要根据我的网页上的用户交互来更改菜单文本。我正在使用剑道网络菜单。到目前为止,我试过: var menu1=$(“#menu1”).data(“kendoMenu”) menu1.element[0].childNodes[0].innerHtml=“新文本” 它工作得很好(有适当的索引),但是在做了一些更改之后,菜单会被激活(格式、行为等),这让我觉得这不是“官方”的方式。有什么想法吗?您应该使用KendoUI菜单提供的一些方法来管理新选项,而不是使用HTML DOM 你应该看看: :在

我需要根据我的网页上的用户交互来更改菜单文本。我正在使用剑道网络菜单。到目前为止,我试过:

var menu1=$(“#menu1”).data(“kendoMenu”)
menu1.element[0].childNodes[0].innerHtml=“新文本”


它工作得很好(有适当的索引),但是在做了一些更改之后,菜单会被激活(格式、行为等),这让我觉得这不是“官方”的方式。有什么想法吗?

您应该使用KendoUI菜单提供的一些方法来管理新选项,而不是使用HTML DOM

你应该看看:

  • :在指定的引用项之前将项插入菜单
  • :在指定的引用项之后将项插入菜单
  • :将项目附加到指定引用项目子菜单中的菜单
根据插入位置的不同,应使用其中一种

在下面的示例中,您有两个用于插入菜单中的第一个选项的功能:

menu.insertBefore(
    [ { text: "NEW TEXT" } ], 
    "#where > li:first-child"
);
menu.insertAfter(
    [ { text: "NEW TEXT" } ], 
    "#where > li:last-child"
);
其中
#其中
是包含选项(菜单项)列表的
li
id

如果要作为菜单中的最后一个选项插入:

menu.insertBefore(
    [ { text: "NEW TEXT" } ], 
    "#where > li:first-child"
);
menu.insertAfter(
    [ { text: "NEW TEXT" } ], 
    "#where > li:last-child"
);
你可以在行动中看到它