1)我使用kendogrid和内联编辑功能。我需要一个场景来在网格中使用自动完成控件。如何实现这一点可以帮助吗?
2)当我根据选择选择一个网格列的自动完成内的项目时,我获取数据。我需要根据这些数据更新同一网格行的其他列的数据。
答案 0 :(得分:2)
1)如果您使用模板驱动的表单,则可以在网格列定义中使用模板:
<kendo-grid-column field="ProductName" title="Product Name">
<template kendoGridEditTemplate let-dataItem="dataItem">
<kendo-autocomplete
[data]="listProducts"
[placeholder]="'e.g. Milk'"
[(ngModel)]="dataItem.ProductName"
(valueChange)="handleProductChange($event)"
>
</template>
</kendo-grid-column>
2)如果在自动填充中选择值时需要对行应用更改,则可以使用valueChange事件。 首先在编辑行时存储已编辑的行索引:
protected editHandler({sender, rowIndex, dataItem}) {
(...)
// track last edited row
// it will be used in `closeEditor` for closing previous edited row
this.editedRowIndex = rowIndex;
}
然后使用此行索引对已编辑的行进行更改:
handleProductChange(value) {
// Do needed changes in model
doSomethingWith(this.gridData[this.editedRowIndex]);
}