I have an editor template where i have added this list View as component while rendering on grid edit/add why am i seeing this [object object]. I'm not sure what mistake I've making here.
Editor Template:
@(Html.Kendo().Template()
.AddHtml("<div class=\"k-edit-label\">")
.AddHtml(Html.LabelFor(m => m.WeekDays).ToHtmlString())
.AddHtml("</div>")
.AddHtml("<div class=\"k-edit-field\">")
.AddComponent(c => c.ListView<CheckboxList>()
.Name("weekDays")
.TagName("div")
.ClientTemplateHandler("weekDaysTemplateHandler")
.HtmlAttributes(new { data_bind = "source: daysDataSource"})
)
.AddHtml("</div>")
)
my kendo observable and template handler:
function weekDaysTemplateHandler(data){
var result = '<div style="width: 33%;">';
result += `<input class="weekDays" data-name="${kendo.htmlEncode(data.Name)}" data-id="${kendo.htmlEncode(data.ID)}" name="weekDays" type="checkbox" style="vertical-align: -2px" data-bind="checked:weekDays[${kendo.htmlEncode(data.ID)}].Selected" />`;
result += ` <span>${kendo.htmlEncode(data.Name)}</span>`;
result += "</div>"
return result;
}var viewmodel = new kendo.observable({
dataSource: [],
weekDaysDataSource: new kendo.data.DataSource({
data: []
}),
OnEdit: function(e){
this.weekDaysDataSource.data(e.model.WeekDays);
}
});
WeekDays: [
{
ID: 1,
Name: "Monday",
Selected: false
},
{
ID: 2,
Name: "Tuesday",
Selected: false
},
.... <rest of the days>
];
In UI it looks like this:
DOM Element: