Kendo UI网页菜单,更改菜单文本

时间:2014-03-31 19:13:14

标签: javascript menu kendo-ui

我需要根据用户在网页上的互动来更改菜单文字。我正在使用kendo网页菜单。到目前为止,我尝试过:

var menu1 = $("#menu1").data("kendoMenu"); menu1.element[0].childNodes[0].innerHtml = "NEW TEXT";

它运行良好(使用正确的索引),但经过一些更改后菜单被激活(格式化,行为等),这让我觉得这不是"官方"这样做的方式。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

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

你应该看看:

  • insertBefore:在指定的referenceItem之前的项目中插入一个项目。
  • insertAfter:在指定的referenceItem后面的菜单中插入一个项目。
  • append:将项目追加到指定referenceItem子菜单中的菜单。

您应该使用其中一个,具体取决于插入的位置。

在以下示例中,您有两个功能,可以在菜单中插入第一个选项:

menu.insertBefore(
    [ { text: "NEW TEXT" } ], 
    "#where > li:first-child"
);

其中#where是包含选项列表(菜单项)的id的{​​{1}}。

如果要在菜单中插入最后一个选项:

li

您可以在行动here

中看到它