Как получить свернутый ряд Kendo TreeList? - PullRequest
0 голосов
/ 09 октября 2018

У меня есть Kendo TreeList и событие свертывания, привязанное к методу onCollapse().

Я пытался получить свернутую строку с помощью e.source, но это undefined .

В методах, связанных с dragstart, drop и некоторыми другими событиями, e.source - это строка, но не в событии collapse.

Как получить строку, предназначенную для свертывания?

Вот код:

onCollapse: function (e) {
    console.log(e.source) //undefined
    var row = **?** ;    
    var dataItem = treeList.dataItem(row);
    if (dataItem.Level == 0) { //my dataitems have levels
        console.log("Prevent collapsing the ParentRow of all rows");
        e.preventDefault();
    }
}

----------- решено (см. Ответ) -------- решение: e.model

onCollapse: function (e) {
        if (e.model.Level == 0) {
            console.log("Prevent collapsing the ParentRow of all rows");
            e.preventDefault();
        }
    }

1 Ответ

0 голосов
/ 09 октября 2018

Я только что что-то пробовал, не знаю, как выглядят ваши данные, но взгляните:

<script>
    $("#treeList").kendoTreeList({
      columns: [
        { field: "Name" },
        { field: "Position" }
      ],
      dataSource: [
        { id: 1, Name: "Daryl Sweeney", Position: "CEO", parentId: null, expanded: true },
        { id: 2, Name: "Guy Wooten", Position: "Chief Technical Officer", parentId: 1 }
      ],
      collapse: function(e) {
        console.log("collapse", e.model);
        console.log("collapse", e.model.Name); //will get Daryl Sweeney
      }
    });
</script>

Так что в этом случае он напишет название сворачивающегося элемента.

Здесь также Dojo для тестирования: https://dojo.telerik.com/isiBaVEt

Cheers

...