mohsen_zelzela00
دوشنبه 21 مرداد 1392, 14:37 عصر
با عرض سلام
من به تازگی از کنترل kendo.ui.grid در پروژه های asp.net mvc استفاده می کنم. برای ایجاد grid دستورات زیر را نوشتم
@(Html.Kendo().Grid<BrandViewModel>(Model) .Name("Grid") .Columns(columns => { columns.Bound(p => p.BrandName); columns.Bound(p => p.BrandAbbr); columns.Bound(p => p.SrcImage); columns.Command(command => command.Custom("Edit").Click("editItem")); }) .DataSource(dataSource => dataSource .Ajax() .Read(read => read.Action("CustomCommand_Read", "Brand")) .Model(model => model.Id(p => p.Id)) ) )
من می خواهم زمانی که کاربر بر روی دکمه ویرایش کلیک کرد view مربوط به ویرایش در کنترل kendo.ui.window به صورت popup ظاهر شود و زمانی که کاربر عملیات ویرایش را انجام داد و روی دکمه ذخیره کیک کرد kendo.ui.window بسته بشه و grid اطلاعاتش ریفرش بشه برای این کار کد زیر را نوشتم
@(Html.Kendo().Window().Name("Details") .Title("Customer Details") .Visible(false) .Modal(true) .Height(400) .Draggable(true) .Width(300) .Events(events => events.Close("onClose")) )
<script type="text/x-kendo-template" id="template"> <div id="details-container"> <!-- this will be the content of the popup --> BrandName: <input type='text' value='#= BrandName #' /> </div> </script>
var detailsTemplate = kendo.template($("#template").html()); var windowObject; $(document).ready(function () { windowObject = $("#Details").data("kendoWindow"); }); function editItem(e) { e.preventDefault(); var dataItem = this.dataItem($(e.currentTarget).closest("tr")); windowObject.refresh({ url: "/Brand/Edit/" + dataItem.Id }); windowObject.center().open(); } function onClose(e) { var grid = $("#Grid").data("kendoGrid").dataSource.read(); }
اما وقتی فرم بسته میشه دستور$("#Grid").data("kendoGrid") مقدار Undefined را برمی گرداند و همین باعث می شود که grid ریفرش نشود.
ممنون میشم اساتید محترم راهنمایی کنند.
من به تازگی از کنترل kendo.ui.grid در پروژه های asp.net mvc استفاده می کنم. برای ایجاد grid دستورات زیر را نوشتم
@(Html.Kendo().Grid<BrandViewModel>(Model) .Name("Grid") .Columns(columns => { columns.Bound(p => p.BrandName); columns.Bound(p => p.BrandAbbr); columns.Bound(p => p.SrcImage); columns.Command(command => command.Custom("Edit").Click("editItem")); }) .DataSource(dataSource => dataSource .Ajax() .Read(read => read.Action("CustomCommand_Read", "Brand")) .Model(model => model.Id(p => p.Id)) ) )
من می خواهم زمانی که کاربر بر روی دکمه ویرایش کلیک کرد view مربوط به ویرایش در کنترل kendo.ui.window به صورت popup ظاهر شود و زمانی که کاربر عملیات ویرایش را انجام داد و روی دکمه ذخیره کیک کرد kendo.ui.window بسته بشه و grid اطلاعاتش ریفرش بشه برای این کار کد زیر را نوشتم
@(Html.Kendo().Window().Name("Details") .Title("Customer Details") .Visible(false) .Modal(true) .Height(400) .Draggable(true) .Width(300) .Events(events => events.Close("onClose")) )
<script type="text/x-kendo-template" id="template"> <div id="details-container"> <!-- this will be the content of the popup --> BrandName: <input type='text' value='#= BrandName #' /> </div> </script>
var detailsTemplate = kendo.template($("#template").html()); var windowObject; $(document).ready(function () { windowObject = $("#Details").data("kendoWindow"); }); function editItem(e) { e.preventDefault(); var dataItem = this.dataItem($(e.currentTarget).closest("tr")); windowObject.refresh({ url: "/Brand/Edit/" + dataItem.Id }); windowObject.center().open(); } function onClose(e) { var grid = $("#Grid").data("kendoGrid").dataSource.read(); }
اما وقتی فرم بسته میشه دستور$("#Grid").data("kendoGrid") مقدار Undefined را برمی گرداند و همین باعث می شود که grid ریفرش نشود.
ممنون میشم اساتید محترم راهنمایی کنند.