作成日: 2014/12/10 最終更新日: 2014/12/10
文書種別
制限事項
詳細
GridをAjaxDataViewに連結して、セルを編集中にソートなどの処理を実行すると、セルの値が元に戻ってしまいます。
これは仕様に基づく動作です。
AjaxDataViewのデータは読み取り専用として動作するため、GridをAjaxDataViewと連結してGridを編集しても、AjaxDataViewのデータは更新されません。データをクライアント側で更新するには、AjaxDataView.onResponseイベントで取得したデータをGridに設定します。
【再現手順】
1.サンプルコードを実行します。
2. 先頭行のセルを編集して、値を変更します。
3. 編集を確定せずに、列ヘッダをクリックしてソートを実行します。
結果: 先頭行のセルの値が元に戻ってしまいます。
【サンプルコード】
$(document).ready(function () {
$('#wijgrid').wijgrid({
data: new wijmo.data.AjaxDataView("http://demo.componentone.com/aspnet/NorthwindAPI/api/read/Product", {
ajax: { crossOrigin: true },
pageSize: 10,
localPaging: true
}),
editingMode: 'cell',
allowSorting: true,
allowPaging: true,
sorting : function (e, args) {
$('#wijgrid').wijgrid('endEdit');
},
pageIndexChanging : function (e, args) {
$('#wijgrid').wijgrid('endEdit');
}
});
});
これは仕様に基づく動作です。
AjaxDataViewのデータは読み取り専用として動作するため、GridをAjaxDataViewと連結してGridを編集しても、AjaxDataViewのデータは更新されません。データをクライアント側で更新するには、AjaxDataView.onResponseイベントで取得したデータをGridに設定します。
【再現手順】
1.サンプルコードを実行します。
2. 先頭行のセルを編集して、値を変更します。
3. 編集を確定せずに、列ヘッダをクリックしてソートを実行します。
結果: 先頭行のセルの値が元に戻ってしまいます。
【サンプルコード】
$(document).ready(function () {
$('#wijgrid').wijgrid({
data: new wijmo.data.AjaxDataView("http://demo.componentone.com/aspnet/NorthwindAPI/api/read/Product", {
ajax: { crossOrigin: true },
pageSize: 10,
localPaging: true
}),
editingMode: 'cell',
allowSorting: true,
allowPaging: true,
sorting : function (e, args) {
$('#wijgrid').wijgrid('endEdit');
},
pageIndexChanging : function (e, args) {
$('#wijgrid').wijgrid('endEdit');
}
});
});
回避方法
AjaxDataView.onResponseイベントで取得したデータをGridに設定することで、データをクライアント側で更新することができます。
【サンプルコード】
$(document).ready(function () {
(new wijmo.data.AjaxDataView("http://demo.componentone.com/aspnet/NorthwindAPI/api/read/Product", {
ajax: { crossOrigin: true },
pageSize: 10,
localPaging: true,
onResponse: function (data) {
$('#wijgrid').wijgrid({
data: data,
editingMode: 'cell',
allowSorting: true,
allowPaging: true,
sorting: function (e, args) {
$('#wijgrid').wijgrid("endEdit");
},
pageIndexChanging: function (e, args) {
$('#wijgrid').wijgrid("endEdit");
}
});
return {
results: data
}
}
})).refresh();
});
【サンプルコード】
$(document).ready(function () {
(new wijmo.data.AjaxDataView("http://demo.componentone.com/aspnet/NorthwindAPI/api/read/Product", {
ajax: { crossOrigin: true },
pageSize: 10,
localPaging: true,
onResponse: function (data) {
$('#wijgrid').wijgrid({
data: data,
editingMode: 'cell',
allowSorting: true,
allowPaging: true,
sorting: function (e, args) {
$('#wijgrid').wijgrid("endEdit");
},
pageIndexChanging: function (e, args) {
$('#wijgrid').wijgrid("endEdit");
}
});
return {
results: data
}
}
})).refresh();
});
旧文書番号
81098