or
<script id="popup_editor" type="text/x-kendo-template"><div id="monthlyOptions" > <label>Select Days of Month</label> <select id="daysOfMonth" name="daysOfMonth" multiple="multiple" data-placeholder="Select Days" data-role="multiselect"> <option>1</option> <option>2</option> <option>3</option> <option>4</option> <option>5</option> <option>6</option> <option>7</option> <option>8</option> <option>9</option> <option>10</option> <option>11</option> <option>12</option> <option>13</option> <option>14</option> <option>15</option> <option>16</option> <option>17</option> <option>18</option> <option>19</option> <option>20</option> <option>21</option> <option>22</option> <option>23</option> <option>24</option> <option>25</option> <option>26</option> <option>27</option> <option>28</option> <option>29</option> <option>30</option> <option>31</option> </select> <span class="k-invalid-msg" data-for="daysOfMonth"></span> </div> </script>01. @(Html.Kendo().Grid<Club.Models.FieldModel>()02. .Name("config")03. .Columns(columns =>04. {05. columns.Bound(s => s.Id).Hidden();06. columns.Bound(s => s.FieldName).Width(10).Title("Field Name");07. columns.Bound(s => s.isVisible).Width(10).Title("Hidden ?");08. columns.Bound(s => s.isReadonly).Width(10).Title("Read Only ?");09. columns.Bound(s => s.isMultiSelect).Width(10).Title("Single Select ?");10. columns.Bound(s => s.isMask).Width(10).Title("Masking ?");11. columns.Bound(s => s.MaskLength).Width(10).Title("Mask Length");12. /*columns.Command(commands =>13. {14. commands.Destroy(); // The "destroy" command removes data items15. }).Title("Commands").Width(200);*/16. })17. .ToolBar(toolbar =>18. {19. // toolbar.Create(); // The "create" command adds new data items20. toolbar.Save(); // The "save" command saves the changed data items21. })22. .Editable(editable => editable.Mode(GridEditMode.InCell)) // Use in-cell editing mode23. .DataSource(dataSource =>24. dataSource.Ajax()25. .Batch(true) // Enable batch updates26. .Model(model =>27. {28. model.Id(s => s.Id); 29. model.Field(s => s.Id).Editable(false); 30. model.Field(s => s.FieldName).Editable(false);31. model.Field(s => s.MaskLength).DefaultValue(2);32. 33. })34. // .Create(create => create.Action("Products_Create", "Home")) 35. .Read(read => read.Action("GetConfig", "Field",new { moduleId = 1 })) 36. .Update(update => update.Action("ConfigsUpdate", "Field").Type(HttpVerbs.Post))37. //.Update(update => update.Action("ConfigsUpdate", "Field")) 38. .Destroy(destroy => destroy.Action("Products_Destroy", "Home")) 39. .PageSize(5)40. )41. .Pageable(pager => pager.PageSizes(new int[] {5, 10, 20}))42. .Filterable()43. .Sortable()44. 45.)01.[AcceptVerbs(HttpVerbs.Post)]02. public ActionResult ConfigsUpdate([DataSourceRequest]DataSourceRequest request, [Bind(Prefix = "models")]IEnumerable<FieldModel> fieldItems)03. {04. var entities = new List<FieldModel>();05. foreach (var item in fieldItems)06. {07. var entity = new FieldModel08. {09. Id = item.Id,10. FieldName = item.FieldName,11. isVisible = item.isVisible,12. isMultiSelect = item.isMultiSelect,13. isReadonly = item.isReadonly,14. isMask = item.isMask,15. MaskLength = item.MaskLength16. };17. }18. return Json(entities.ToDataSourceResult(request, ModelState, item => new FieldModel19. {20. Id = item.Id,21. FieldName = item.FieldName,22. isVisible = item.isVisible,23. isMultiSelect = item.isMultiSelect,24. isReadonly = item.isReadonly,25. isMask = item.isMask,26. MaskLength = item.MaskLength27. }));28. }Hello,
Let me explain my scenario for better understanding:
- my Model contains a list of products. All these products are displayed in GridView
- there is a nested detail template with TabStrip for each product
- one tab/item of this TabStrip contains all ebay auctions of this product in another GridView
ie. something like this http://demos.telerik.com/aspnet-mvc/grid/detailtemplate
My view in razor syntax:
@model List<Site.Models.Products> // main model[...]@(Html.Kendo().Grid(Model) // first grid which lists all products [...] .ClientDetailTemplateId("Details") // nested template [...]<script id="Details"> @(Html.Kendo().TabStrip() [...] .Items(items => { [...] items.Add().Text("Auctions").Content(@<text> @(Html.Kendo().Grid(new List<Site.Models.EbayAuctions>()) .Name("Auctions_for_#=strProductID#") // this variable is from Site.Models.Products .Columns(columns => { columns.Bound(p => p.strEbayID); // this variable is from Site.Models.EbayAuctions [...].Columns(columns =>{ columns.Bound(p => p.strEbayID).ClientTemplate( "<a href=\"http://www.sandbox.ebay.com/itm/\">" + "#=data.strEbayID#" + "</a>" ) <div id="buUsers" kendo-grid="buUsers" data-k-options="kendoGridOptionsBuUsers"></div> $scope.buUsers.select("tr:eq(" + (index + 1) + ")")