ich mit der gewählten Antwort nicht einverstanden, weil je nachdem, was Sie eigentlich tun, werden Sie 1 Schritt hinter dem tatsächlich gewählten Wert sein kann.
Wenn Sie einige einfache Löschfunktion hatten dann diese Art von Code funktioniert gut
var treeview = $("#treeview").data("kendoTreeView");
var selectedNode = treeview.select(),
item = treeview.dataItem(selectedNode);
Allerdings, wenn Sie mit dem treeview anfangen zu spielen mehr werden Sie im Bedauern darüber, dass am Ende wie ich.
Best Practice ist an den Ereignishandler
zum Beispiel zu binden
var treeview = $("#treeview").kendoTreeView({
expanded: true,
select: onSelect,
....
}).data("kendoTreeView");
wählenFunktion
function onSelect(e) {
var treeview = $("#treeview").data("kendoTreeView");
var item = treeview.dataItem(e.node);
if (item) {
console.log('Selected item: ' + item.whatever + ' | Id = ' + item.Id + ' | Type = ' + item.Type);
var someVariable = item.whatever;
} else{
console.log('nothing selected');
}
Hey Ryan, vielen Dank für Ihre Antwort. Aber hier gibt es null für item.text und item.id gibt einige Guid. Ich erwarte den genauen Text und Wert, der durch die Datenquelle gebunden ist. – jestges
Meine Text/Wert-Felder im Beispiel stimmen nicht genau mit Ihren überein. Siehe mein Update und aktualisierte Geige – ryan
Hey Ryan, ich weiß nicht, was ich falsch mache. Ich folgte dem gleichen Weg, aber es gibt tv.dataItem ist kein Funktionsfehler. – jestges