KendoUI DataSourceのソートパラメータをプログラムで設定してから、データを読み取って2番目のサーバーの読み取りを回避することはできますか? スコープは、特定のユーザー対話の既定の並べ替えを設定しています。どうやって?KendoUI:プログラムでグリッドソートを設定する
ここでは、答えがポイントに達していない(または、私は物事の仕組みを理解していない)ので、私がしようとしているものの例です。
私は最初のソートで剣道DataSourceを定義します。
var datasource = new kendo.data.DataSource({
parameterMap: function (inputParams, operation) {
return JSON.stringify(inputParams)
},
// default sort
sort: [
{field: "field_1", dir: "asc"},
{field: "field_2", dir: "asc"}
]
});
このデータソースは、剣道のグリッドにバインドされます。
var grid = $("element").kendoGrid({
dataSource: datasource
});
それから私は、上の「読み」を呼び出すボタンがありますデータソースの最初のページをグリッドに表示します。
$("#btn").bind("click", function(e) {
datasource.page(1);
});
この方法では、ユーザーは "field_1"と "field_2"で順序付けられたデータを取得し、グリッドは列ヘッダーでこの並べ替えを表示します。ユーザーは、列見出しをクリックすることで、データの順序を変更することができます。
私がしたいのは、DataSource宣言で定義されているように、デフォルトのソートを最初のものにリセットし、再び列ヘッダーに表示し、新しいデータソースを再度作成しないことです。
ような何か:
$("#btn").bind("click", function(e) {
datasource.sort = [
{field: "field_1", dir: "asc"},
{field: "field_2", dir: "asc"}
];
datasource.page(1);
});
提供ソリューションがポイントに到達していないようだ(と私はそう簡単ではありませんように思わ合法的な質問のための評判ポイントを失うこととすべき午前、なぜまだ私は理解していませんフレームワークによって対処される)。
私は間違っていることを示してください(私は評判を失うことについて心配していません - 問題の解決方法を理解したいと思います)。ありがとうございました!
私はそれが可能ではないと仮定すべきです。 –
これは、$ grid.dataSource.sort( {field: "A"、dir: "desc"}、 {field: "B"、dir: "asc"}、 {field: "C"、dir: "asc"}、 {field: "D"、dir: "desc"} );私が見る唯一の問題は、ソートインジケータがすべての列に表示されないということです。 – topwik