stackoverflow demo: mvvm binding
by Dan Mathisen
HTML
<script src="http://cdn.kendostatic.com/2013.2.918/js/kendo.all.min.js"></script>
<link rel="stylesheet" href="http://cdn.kendostatic.com/2013.2.918/styles/kendo.default.min.css">
<link rel="stylesheet" href="http://cdn.kendostatic.com/2013.2.918/styles/kendo.common.min.css">
<div id='bindme'></div>
JavaScript
var data = [{
text: "item1",
enabled: true,
items: [{
text: "item1-1",
enabled: true,
items: []
}, {
text: "item1-2",
enabled: true,
items: []
}]
}, {
text: "item2",
enabled: true,
items: []
}, {
text: "item3",
enabled: true,
items: [{
text: "item3-1",
enabled: true,
items: []
}]
}, {
text: "item4",
enabled: true,
items: []
}];
$("#bindme").kendoMenu({
dataSource: data,
hasChildren: function (item) {
return item.items.length;
}
});
var dataSource = new kendo.data.HierarchicalDataSource({
data: data,
change: function (e) {
// enable / disable items in the menu
var changedItem = e.items[0];
var enabled = changedItem.enabled;
var text = changedItem.text;
var menuElem = $("#bindme").find(".k-link:contains(" + text + ")").parent();
$("#bindme").data("kendoMenu").enable(menuElem, enabled);
}
});
dataSource.read();
setTimeout(function () {
dataSource.at(0).set("enabled", false);
}, 3000);