我正在使用kendo UI菜单。 我已经定义了像
$("#menu").kendoMenu({
dataSource: [
{ text: "parent",
items: [
{ text: "child1" },
{ text: "child2" },
{ text: "child3" },
{ text: "child4" }
]
}
],
select:function(e){
$(e.item).children(".k-link").text();
}
});
最初,菜单将文本显示为“父级”。 我想要的是,在select事件中,当我点击任何其他项目时,所选项目文本必须显示在顶部菜单中。告诉我如何更改剑道菜单中的文字
答案 0 :(得分:2)
尽管menu
使用DataSource构建初始内容,但不再使用它,并且DataSource中的任何操作都不会直接反映在菜单中。这意味着你必须操纵DOM对象来替换文本。
// Get selected text
var text = $(e.item).text();
// Get the first parent (in case you have multiple menu levels)
var topParent = $(e.item).parents("li").last();
// And now go to the node that contains the text
var textParent = $("> span.k-link", topParent);
// Go to the content (text) and replace it with child text
textParent.contents().first()[0].textContent = text;
在此处查看此行动:http://jsfiddle.net/OnaBai/kfcdF/