私は剣道と剣道グリッドは初めてですが、詳細グリッドがバッチ編集をサポートするはずのマスター詳細剣道グリッドの使用方法を学ぼうとしています。データは、ローカルの JavaScript オブジェクトで利用できます。
この jsFiddleは、私が見ている問題を示しています。
グリッドの作成方法は次のとおりです - 完全なスニペットについては jsFiddle を参照してください -
$("#grid").kendoGrid({
dataSource: items,
detailInit: createDetail,
columns: [
{ field: "Item", width: "200px" },
]
});
function createDetail(e) {
$("<div/>")
.appendTo(e.detailCell)
.kendoGrid({
dataSource: {
batch:true,
transport: {
read: function (options) {
options.success(e.data.SubItems);
}
}
},
editable:true,
pageable:true,
toolbar: ["save", "cancel"],
columns: [
{ field: "SubItem", title: "Sub Item", width: 200 },
{ field: "Heading1", title: "Heading 1", width: 100 }
]
});
}
グリッド内のアイテムを編集して次のセルをクリックすると、隣接するセルであっても、どこをクリックしても詳細グリッドが自動的に折りたたまれます。もう一度開くと、セルに変更インジケーター (赤いノッチ) は表示されませんが、新しい値はそこにあります。保存を ajax 呼び出しに接続すると、Kendo は編集された正しい詳細項目を送信します。
[変更をキャンセル] をクリックしても何も起こりません。
グリッドが折りたたまれず、変更インジケーターが表示されるようにするにはどうすればよいですか?
変更のキャンセルを正しく機能させるにはどうすればよいですか?
[更新] - さらに調査した結果、Kendo の古いバージョン 2011.3.1129 を使用すると、期待どおりに動作することがわかりました。しかし、新しい 2012.3.1114 を使用すると、そうではありません。これがバグなのか動作の変更なのかはわかりません。