以前は使用してKendo-UI v2012.2.710
いましたが、更新するKendo-UI v2012.3.1114
とコードが機能しなくなりました。私のコードは非常に単純なので、何が変わったのかよくわかりません。誰でもこれに光を当てることができますか?
この機能を維持するために以前のバージョンにロールバックすることは、他の機能を損なう可能性があるため、オプションではありません。
<div id="gridTiming"></div>
<script>
var entries = [
{ "city":"Boston", "time":"10:14", datetime: "2012-08-28T10:14:00.000Z" },
{ "city":"Kyoto", "time":"23:14", datetime: "2012-08-28T23:14:00.000Z"},
{ "city":"La Paz", "time":"10:14", datetime: "2012-08-28T10:14:00.000Z"},
{ "city":"San Francisco", "time":"07:14", datetime: "2012-08-28T07:14:00.000Z"},
{ "city":"Salt Lake City", "time":"08:14", datetime: "2012-08-28T08:14:00.000Z"},
{ "city":"Salvador", "time":"11:14", datetime: "2012-08-28T11:14:00.000Z"},
{ "city":"Salzburg", "time":"16:14", datetime: "2012-08-28T16:14:00.000Z" },
{ "city":"San Diego", "time":"07:14", datetime: "2012-08-28T07:14:00.000Z" }
];
function timeEditor(container, options) {
$('<input data-text-field="' + options.field + '" data-value-field="' +
options.field + '" data-bind="value:' + options.field +
'" data-format="' + options.format + '"/>')
.appendTo(container)
.kendoTimePicker({});
}
function dateTimeEditor(container, options) {
console.log("options", options);
$('<input data-text-field="' + options.field + '" data-value-field="' +
options.field + '" data-bind="value:' + options.field +
'" data-format="' + options.format + '"/>')
.appendTo(container)
.kendoDateTimePicker({});
}
$("#gridTiming").kendoGrid({
dataSource: {
data: entries,
schema: {
parse: function (response) {
$.each(response, function (idx, elem) {
if (elem.time && typeof elem.time === "string") {
elem.time = kendo.parseDate(elem.time, "HH:mm");
}
if (elem.datetime && typeof elem.datetime === "string") {
elem.datetime = kendo.parseDate(elem.datetime, "yyyy-MM-ddTHH:mm:ss.fffZ");
}
});
return response;
}
}
},
columns: [
{ command: [ "edit" ] },
{ field:"city", title:"City" },
{ field:"time", title:"Time", format:"{0:HH:mm}", editor: timeEditor },
{ field:"datetime", title:"Date - Time", format:"{0:yyyy-MM-dd HH:mm}", editor: dateTimeEditor }
],
editable: "inline",
navigatable: true
});
</script>
編集: 次の jsFiddles のペアは、問題を示しています。
問題を確認するには、次の手順を実行します。
- 行の「編集」をクリックします
- 項目を変更します。
- 「更新」をクリック
Troy Alford : どちらのバージョンも基礎となるグリッドのデータを更新しますが、v2012.2.710
バージョンのみがダイアログを適切に閉じ、グリッドのセルを変更済みとしてマークします。