|
<ejs-treegrid id="treegrid" treeColumnIndex="1" dataSource="@ViewBag.treedata" childMapping="Children" toolbar="@(new List<string>() { "Add", "Edit", "Delete", "Cancel", "Update" })" queryCellInfo="queryCellInfo">
<e-treegrid-editSettings allowAdding="true" allowDeleting="true" allowEditing="true" mode="Row"></e-treegrid-editSettings>
<e-treegrid-columns>
. . .
<e-treegrid-column field="Duration" headerText="Duration" textAlign="Right" width="70" editType="dropdownedit" edit="@(new { create = "create", read = "read", write = "write", destroy ="destroy" })"></e-treegrid-column>
</e-treegrid-columns>
</ejs-treegrid>
</div>
<script>
var jsonData = @Json.Serialize(@ViewBag.durationData);
function queryCellInfo(args) {
if (args.column.field === "Duration") {
for (var i = 0; i < jsonData.length; i++) {
let data = args.data;
if (data[args.column.field] === jsonData[i]["Duration"]) {
args.cell.innerText = jsonData[i]["FirstName"]; // assign the foreignkey field value to the innertext
}
}
}
}
</script>
<script>
var data = @Json.Serialize(@ViewBag.durationData);
var dropdownObj, elem;
function create(args) {
elem = document.createElement('input');
return elem;
}
function read(args) {
return dropdownObj.value;
}
function destroy(args) {
return dropdownObj.destroy();
}
function write(args) {
var treeGridObj = document.getElementById("treegrid").ej2_instances[0];
dropdownObj = new ej.dropdowns.DropDownList({
dataSource: data,
fields: { value: 'Duration', text: 'FirstName' },
value: args.rowData[args.column.field],
. . .
});
dropdownObj.appendTo(elem);
}
</script> |
Perfect,
Thank you very much for your response