Kendo TreeView в сетке отображается «неопределено» - PullRequest
1 голос
/ 21 октября 2019

У меня было это демо-сетка кендо , а в столбце outletID я хочу использовать kendoTreeView с флажком, поэтому несколько выбранных outletID возможно. Но при редактировании он отображает undefined результат, и шаблон, отображающий outletName, также не работает. Ценим вашу помощь

DEMO IN DOJO

1 Ответ

2 голосов
/ 21 октября 2019

Вашему дереву нужно установить dataTextField и dataValueField .

Ваш шаблон столбца не знает, где искать outletName. Kendo поддерживает 1-N отношений , но я не знаю NN.

Данные в вашем шаблоне являются текущей строкой сетки. Для первого ряда это будет {"id":"1","outletID":"LA2,LA3","accountName":"Data1"}. Вам нужно обработать эти данные самостоятельно. Например:

template: "#= (data.outletID) ? data.outletID.split(',')
    .map(x => TreeData.find(y => y.outletID == x)['outletName']) : '' #"

Для редактора значение dropDownTree равно массиву . В вашей строке есть строка. Вам нужно сделать две вещи:

1. Инициируйте значение редактора в функции outletTree:

if (options.model) {
    ddt.value((options.model[options.field] || '').split(','))
}

2. Когда значение dropDownTree изменится, обновите строку сетки:

  change: e => {
    const value = e.sender.value();
    console.log(value)
    options.model.set(options.field, value.join(','))
  }

Вот обновленное додзё: https://dojo.telerik.com/@GaloisGirl/oYEGerAK. Кнопка «Обновить» пока не работает, возможно, потому что источник данных должен поддерживать редакцию. Здесь - как это сделать на локальных данных.

...