2016-12-28 7 views
0

剣道のデータグリッドが列によってデフォルトにグループ化されていて、グリッドをインラインで編集したい。私はユーザーが他の列でグループ化することを望んでいません。既定のグループ化は正常に機能しますが、更新イベントは発生せず、コントローラーはコントローラーのインライン更新メソッドにはなりません。私が間違っている場所を確認してください。以下のコードです:剣道のデータグリッド更新イベントが列にグループ化されているときに起動されない

@(Html.Kendo().Grid(Model) 
    .Name("grdTimesheets") 
    .Columns(columns => 
    { 
     columns.Bound(p => p.EmployeeId).Hidden(true); 
     columns.Bound(p => p.FirstName); 
     columns.Bound(p => p.Monday.Hour).Title("Monday") 
      .EditorTemplateName("TimesheetMonday"); 
     columns.Command(command => 
     { 
      command.Edit(); 
      command.Destroy(); 
      command.Custom("Add").Text(" ").Click("AddNewTimesheet"); 
     }); 
    }) 
    .Editable(editable => editable.Mode(GridEditMode.InLine)) 
    .Pageable() 
    .Sortable() 
    .Groupable(false) 
    .Scrollable() 
    .DataSource(dataSource => dataSource 
     .Ajax() 
     .Model(model => 
     { 
      model.Id(p => p.EmployeeId); 
      model.Field(p => p.FirstName).Editable(false); 
     }) 
     .PageSize(20) 
     .Update(update => update.Action("EditingInline_Update", "Timesheet")) 
     .Destroy(destroy => destroy.Action("EditingInline_Destroy", "Timesheet")) 
     .Group(d=>d.Add(f=>f.FirstName)) 
    ) 

私は最後の行をコメントアウトした場合、 ".Group(D => d.Add()=> f.FirstName F)"、すべてが正常に動作しますが、デフォルトのグループ化が消灯します。

答えて

0

私はその答えが少し遅れていることを知っていますが、他の誰かが同じ問題を抱えている場合に備えてここに残しておきます。列ごとにグループ化すると、グリッドは起動しません。 "。更新(update => update.Action(" EditingInline_Update "、" Timesheet "))"。これを修正するには、グリッド用のOnEditEventとJavaScript関数のOnEditEventを追加して、イベントをテキストボックス/ドロップダウンやその他のコントロールに追加する必要があります。

.Events(イベント=> events.Edit( "grid_edit"))これはビューで

ジャバスクリプトです:

function grid_edit(e) { 
    var grid = $('#grid').data('kendoGrid'); 
    var cell = e.container; 
    var area = cell.find("textarea") 

    area.on("blur", function() { 
     // update ur entries here 
     var areaVal = cell.find("textarea").val(); // this is the new value 
     // call some ajax to update the value and in the success call grid.dataSource.sync(); to refresh the grid 
    });} 

また、あなたは(あなたの.Updateを削除する必要があります以下のサンプル)が不要になったため、DataSourceのために使用します。

関連する問題