フレームワーク自体ではできないことを管理するために、フロントエンドに KENDOUI を jQuery/Javascript コーディングで使用するプロジェクトに取り組んでいます。
クライアント側の並べ替えが必要なKENDO Gridがあり、これが私がやろうとしていることです-
var tPositiondata = _DetailsGridDS.data();
// sort position datasource in order to bind treeview
tPositiondata = tPositiondata.toJSON().sort(function (a, b) {
{
if ((a.DisplayText.localeCompare(b.DisplayText)) < 0) { return -1; }
else if ((a.DisplayText.localeCompare(b.DisplayText)) > 0) { return 1; }
}
});
//re-initialize the grid with new datasource
$("#DivDetailsTable").empty();
$("#DivDetailsTable").kendoGrid({
autobind: false,
scrollable: true,
height: 333,
pageSize: 10,
dataSource: tPositiondata,
dataBound: OnReceivedDataFromDatasource,
columns: [
{
field: "UniqueValue",
title: _ColumnHeaderUniqueValue
},
{
//field: "DisplayTextTranslation",
title: _ColumnHeaderDisplayText,
template: '#= GetTranslation(Id) #'
},
{
field: "CodeAttribute",
title: _ColumnHeaderCodeAttribute
},
{ command: [{ text: _ButtonEdit, className: "k-button k-button-icontext buttonEdit k-grid-Edit" }, { text: _ButtonDelete, className: "k-button k-button-icontext buttonDelete k-grid-Delete" }, { text: " ", className: "buttonUp", width: 15 }, { text: " ", className: "buttonDown", width: 15}], text: "", title: " ", width: 230 }
],
editable: "inline"
});
問題は、変数 "tPositionData" を "_DetailsGridDS" に再割り当てできないことです。それらは明らかに同じ型または形式ではないためです。このため、私のグローバル変数「_DetailsGridDS」には、更新されたソート済みデータがありません。コード内の別の場所で参照すると、データがソートされていません。
誰かがソート後に .toJSON 呼び出しを「元に戻す」/「逆にする」ことを手伝ってくれますか? ?