Kendo TreeView在网格中显示“未定义”

时间:2019-10-21 05:49:44

标签: kendo-ui kendo-grid kendo-treeview

我有这个kendo grid demo,并且在outletID列上,我想将kendoTreeView与复选框一起使用,因此可以选择多个outletID。但是在编辑时,它显示 undefined 结果,并且显示outletName的模板也不起作用。感谢您的帮助

DEMO IN DOJO

1 个答案:

答案 0 :(得分:3)

您的树需要设置dataTextFielddataValueField

您的列模板不知道在哪里寻找outletName。剑道支持1-N relationships,但我不知道N-N。

模板中的数据是网格的当前行。对于第一行,该行将为{"id":"1","outletID":"LA2,LA3","accountName":"Data1"}。您需要自己处理这些数据。例如:

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

对于编辑器,dropDownTree的值为an array。您的行有一个字符串。您需要做两件事:

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(','))
  }

这是更新的dojo:https://dojo.telerik.com/@GaloisGirl/oYEGerAK。 “更新”按钮尚无法使用,可能是因为数据源必须支持版本。 Here是如何对本地数据进行处理。