I've been looking around and found a few examples, this one for example.
But I cant get it to work, if I set it to use the standard Kendo popup editor, it works as expected.
But when I use my template, it does not run/call the action defined in .update(), although I can see the change in the grid behind it, but nothing happens when "updated" button is clicked, cancel works, and that of course cancels changes.
I've probably missed something basic... Below is my code!
GarbageRouteIndex.cshml:
GarbageRouteIndex.cshtml:
But I cant get it to work, if I set it to use the standard Kendo popup editor, it works as expected.
.Editable(editable => editable.Mode(GridEditMode.PopUp))But when I use my template, it does not run/call the action defined in .update(), although I can see the change in the grid behind it, but nothing happens when "updated" button is clicked, cancel works, and that of course cancels changes.
I've probably missed something basic... Below is my code!
GarbageRouteIndex.cshml:
01.@(Html.Kendo().Grid<GarbageRouteViewModel>()02. .Name("garbageRoutes")03. .DataSource(dataSource => dataSource04. .Ajax()05. .ServerOperation(false) // Needs to be used if Grouping or filtering is done in linq-qry(on WeekSchedule or Season), cos ToDataSourceResult() won be able to revers from VM. //uni0jh06. .Model(model => model.Id(x => x.ID))07. .Read(read => read.Action("GetGarbageRoutes", "GarbageRoute"))08. .Update(update => update.Action("UpdateGarbageRoute", "GarbageRoute"))09. .Group(groups => groups.Add(model => model.WeekSchedule))10. //.PageSize(2)11. )12. .Columns(columns =>13. {14. columns.Bound(x => x.ID).Visible(false);15. columns.Bound(x => x.SortOrderIndex).Width(10).Title("^");16. columns.Bound(x => x.ObjectName);17. columns.Bound(x => x.Season);18. columns.Bound(x => x.WeekSchedule);19. columns.Bound(x => x.Description);20. columns.Bound(x => x.PartAreaName);21. columns.Bound(x => x.PartAreaId).Visible(false);22. columns.Command(command => command.Edit().UpdateText("Uppdatera").CancelText("Avbryt"));23. })24. 25. .ToolBar( toolbar => { 26. toolbar.Template(@<text>27. <div class="toolbar">28. <label class="partArea-label" for="partArea">PartArea:</label>29. @(Html.Kendo().DropDownList()30. .Name("partAreaFilter")31. .OptionLabel("Alla")32. .DataTextField("Name")33. .DataValueField("ID")34. .AutoBind(false)35. .Events(e => e.Change("partAreaFilterChange"))36. .DataSource(ds =>37. {38. ds.Read("GetPartAreas", "PartArea");39. 40. })41. ) 42. </div>43. </text>);44. })45. //.HtmlAttributes(new { style = "height: 460px" }) 46. //.Editable(editable => editable.Mode(GridEditMode.PopUp)) //detta är kendos built in-variant.47. .Editable(editable => editable.Mode(GridEditMode.PopUp).TemplateName("GarbageRouteEdit")) 48. //.Groupable()49. .Pageable()50. .Sortable()51. 52.)GarbageRouteIndex.cshtml:
001.@model Roa.Common.DTO.GarbageRouteViewModel002. 003.@Html.HiddenFor(model => model.ID)004. 005. <div class="span8">006. <div class="span3">007. <div class="editor-label">008. Beskrivning009. </div>010. <div class="editor-field">011. @Html.TextAreaFor(model => model.Description, new { @required="*", @placeholder="Beskrivning här..." } )012. @Html.ValidationMessageFor(model => model.Description)013. </div>014. <div class="editor-label">015. Veckodag016. </div>017. <div class="editor-field">018. @Html.TextBoxFor(model => model.Weekday, new { @required="*" })019. @Html.ValidationMessageFor(model => model.Weekday)020. </div>021. 022. <div class="editor-label">023. Start månad024. </div>025. <div class="editor-field">026. @Html.TextBoxFor(model => model.StartMonth, new { @required="*" })027. @Html.ValidationMessageFor(model => model.StartMonth)028. </div>029. <div class="editor-label">030. Start dag031. </div>032. <div class="editor-field">033.@* @(Html.Kendo().DateTimePickerFor(model => model.StartDay)034. .Value(DateTime.Now)035. .Max(DateTime.Now)036. .Events(e => e.Change("startChange"))037. )*@038. @Html.TextBoxFor(model => model.StartDay, new { @required="*" })039. @Html.ValidationMessageFor(model => model.StartDay)040. </div>041. 042. <div class="editor-label">043. Start timma044. </div>045. <div class="editor-field">046. @Html.TextBoxFor(model => model.StartHour, new { @required="*" })047. @Html.ValidationMessageFor(model => model.StartHour)048. </div>049. </div>050. <div class="span4">051. 052. 053. <div class="editor-label">054. Slut månad055. </div>056. <div class="editor-field">057. @Html.TextBoxFor(model => model.EndMonth, new { @required="*" })058. @Html.ValidationMessageFor(model => model.EndMonth)059. </div>060. 061. <div class="editor-label">062. Slut dag063. </div>064. <div class="editor-field">065. @Html.TextBoxFor(model => model.EndDay, new { @required="*" })066. @Html.ValidationMessageFor(model => model.EndDay)067. </div>068. 069. <div class="editor-label">070. Slut timma071. </div>072. <div class="editor-field">073. @Html.TextBoxFor(model => model.EndHour, new { @required="*" })074. @Html.ValidationMessageFor(model => model.EndHour)075. </div>076. 077. <div class="editor-label">078. Ojämn vecka079. </div>080. <div class="editor-field">081. @Html.CheckBoxFor(model => model.OddWeeks, new { @required="*" })082. @Html.ValidationMessageFor(model => model.OddWeeks)083. </div>084. 085. <div class="editor-label">086. Jämn vecka087. </div>088. <div class="editor-field">089. @Html.CheckBoxFor(model => model.EvenWeeks, new { @required="*" })090. @Html.ValidationMessageFor(model => model.EvenWeeks)091. </div>092. </div>093. <div class="span8">094. <input type="file" name="files" id="files" multiple="multiple" value=" " />095. <p>096. 097. </p>098. 099. </div>100. </div>101.