私はこれを試しましたが、あなたと同じ問題がありました。次に、jsfiddle の例が Kendo UI v2011.3.1129 を使用しており、私は Kendo UI Beta v2012.2.621 を使用していることに気付きました。これらのバージョン間に重大な変更がありました。
解決策は、jsfiddle の例と同じバージョンを使用するか、コードを変更することです。データソースを取得するときに、コードを 2 か所変更しました。Grid ウィジェットは、一意の ID を表す id の代わりにモデルの uid フィールドを使用するようになりました。また、Model インスタンスをその uid で取得するには、DataSource の getByUid メソッドを使用する必要があります。
jsfiddle の例:
var target = dataSource.get($(e.draggable.currentTarget).data("id"))
変更されたコード
var target = dataSource.getByUid($(e.draggable.currentTarget).data("uid"))
これは、ターゲットと宛先の両方に対して行う必要があります。
grid.table/*.find("tbody > tr")*/.kendoDropTarget({
group: "gridGroup",
drop: function (e) {
var target = dataSource.getByUid($(e.draggable.currentTarget).data("uid")),
dest = $(e.target);
if (dest.is("th")) {
return;
}
dest = dataSource.getByUid(dest.parent().data("uid"));
//not on same item
if (target.get("id") !== dest.get("id")) {
//reorder the items
var tmp = target.get("position");
target.set("position", dest.get("position"));
dest.set("position", tmp);
dataSource.sort({ field: "position", dir: "asc" });
}
}
});