【问题标题】:Kendo grid save doesn't trigger剑道网格保存不会触发
【发布时间】:2018-06-18 08:26:11
【问题描述】:

(ASP .NET MVC)

我有一个 Kendo UI 网格,除了网格保存按钮没有触发之外,一切正常。编辑和取消可以正常工作,但是当我单击保存按钮时,什么也没有发生,甚至日志方法也没有。

代码如下:

@(Html.MaskableGrid<MunkatarsLog>("gridMunkatarsLog")
                                .Columns(columns =>
                                {
                                    columns.Command(commands =>
                                    {
                                        commands.Edit().Text("<span></span>").UpdateText("<span></span>").CancelText("<span></span>").HtmlAttributes(KendoHelper.EditHtmlAttributesFor(Model));
                                    }).Width(Constants.DEFAULT_GRID_COLUMN_WIDTH_NARROWER).HeaderTemplate("<span class='k-icon k-i-warning'>").Visible(Model.CanUpdate || Model.CanDelete);
                                    columns.Bound(c => c.MunkatarsLogId).Hidden(true);
                                    columns.Bound(c => c.MunkatarsId).Hidden(true);
                                    columns.Bound(c => c.Datum).Format("{0:yyyy.MM.dd.}").EditorTemplateName("Date");
                                    columns.Bound(c => c.MunkatarsEsemenyTipus.Nev).ClientTemplate("#=munkatarsLogClientTemplateBuilder(data)#").EditorTemplateName("MunkatarsEsemenyTipus").EditorViewData(new { Kod = "#=MunkatarsEsemenyTipus.Kod#", Nev = "#=MunkatarsEsemenyTipus.Nev#" });
                                    columns.Bound(c => c.EsemenyLeiras);
                                    columns.Bound(c => c.BejegyzoMunkatarsId).Hidden(true);
                                    columns.Bound(c => c.BejegyzesIdeje).Hidden(true);
                                    columns.Bound(c => c.UtolsoModositoId).Hidden(true);
                                    columns.Bound(c => c.UtolsoModositasIdeje).Hidden(true);
                                    columns.Bound(c => c.Version).Hidden(true);

                                })
                                .ToolBar(KendoHelper.GridToolbarFor<MunkatarsLog>(Model, false))
                                .HtmlAttributes(new { style = "height: 270px;" })
                                .Scrollable()
                                .Sortable()
                                .Pageable(pageable => pageable
                                    .Refresh(true)
                                    .PageSizes(true)
                                    .ButtonCount(5))
                                .Editable(editable => editable.Mode(GridEditMode.InLine).DisplayDeleteConfirmation(StringResource.DeleteConfirm).Enabled(true))
                                .DataSource(dataSource => dataSource
                                    .Ajax()
                                    .Model(m => m.Id(i => i.MunkatarsId))
                                    .Read(read => read.Action("GetAllMunkatarsLogForMunkatars", "MunkatarsLog").Data("selectedMunkatars"))
                                    .Create("AddNew", "MunkatarsLog")
                                    .Update("UpdateLog", "MunkatarsLog")
                                    .PageSize(20)
                                )
                                .Events(ev =>
                                {
                                    ev.DataBound("logGridBound");
                                    ev.Edit("logGridOnEdit");
                                    ev.Cancel("logGridOnCancel");
                                    ev.Save("logGridOnSave");

                                })

还有 javascript 函数:

function logGridOnEdit(e) {
    console.log("Edit");
}

function logGridOnSave(e) {
    console.log("Save");
}

function logGridOnCancel(e) {
    console.log("Cancel");
}

只有保存不会触发。

【问题讨论】:

  • 您的控制台中有任何错误或警告吗?
  • 没什么。那会容易得多。 ://
  • 我想知道 UpdateText 上的 是否引起了问题?渲染的按钮上是否有 k-grid-edit 类?
  • 上面有“k-grid-update”。里面有图标。它看起来像这样:class="k-button k-button-icontext k-primary k-grid-update"

标签: asp.net asp.net-mvc kendo-grid kendo-asp.net-mvc


【解决方案1】:

问题出在下面:

有 3 列包含日期时间数据。 3 列中有 2 列被隐藏,所以我决定不格式化。格式化这两列后,保存工作。

columns.Command(commands =>
                  {
                      commands.Edit().Text("<span></span>").UpdateText("<span></span>").CancelText("<span></span>").HtmlAttributes(KendoHelper.EditHtmlAttributesFor(Model));
                  }).Width(Constants.DEFAULT_GRID_COLUMN_WIDTH_NARROWER).HeaderTemplate("<span class='k-icon k-i-warning'>").Visible(Model.CanUpdate || Model.CanDelete);
                  columns.Bound(c => c.MunkatarsLogId).Hidden(true);
                  columns.Bound(c => c.MunkatarsId).Hidden(true);
                  columns.Bound(c => c.Datum).Format("{0:yyyy.MM.dd.}").EditorTemplateName("Date");
                  columns.Bound(c => c.MunkatarsEsemenyTipus.Nev).EditorTemplateName("MunkatarsEsemenyTipus").EditorViewData(new { Kod = "#=MunkatarsEsemenyTipus.Kod#", Nev = "#=MunkatarsEsemenyTipus.Nev#" });
                  columns.Bound(c => c.EsemenyLeiras);
                  columns.Bound(c => c.BejegyzoMunkatarsId).Hidden(true);
                  columns.Bound(c => c.BejegyzesIdeje).Format("{0:yyyy.MM.dd.}").EditorTemplateName("Date").Hidden(true);
                  columns.Bound(c => c.UtolsoModositoId).Hidden(true);
                  columns.Bound(c => c.UtolsoModositasIdeje).Format("{0:yyyy.MM.dd.}").EditorTemplateName("Date").Hidden(true);
                  columns.Bound(c => c.Version).Hidden(true);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多