7

答えを見つけるのが難しい単純な質問:

プログラムで行を選択しようとすると、これを使用します。

$('#grid').jqGrid('setSelection', rowId);

問題は、現在表示されているページの行のみを選択することです。rowIdが別のページにある場合、選択されません。

詳細: 私の目標は、ページが初めて読み込まれたときに複数の行を選択する (複数のページに広がる) ことです。

ありがとう、ラファエル

PS: この人も同じ問題を抱えています。まだ答えはありません: jqgrid multiselect は、ページングが有効になっている場合、現在のページの行のみを選択します。ページ間で行を選択する方法は?

4

2 に答える 2

9

そうです、jqGrid は現在のページの行のみを選択します。他の行を選択するには、選択した ID のリストを維持し、それらを手動で選択する必要があります。

これを行うには、loadCompleteイベントにコードを追加して、現在のページを検索し、これらの行のいずれかを選択する必要があります。

var ids = grid.jqGrid('getDataIDs');
for (var i = 0; i < ids.length; i++){
    if (selected[ids[i]] === true ){
        grid.setSelection(ids[i], false);
    }
}

また、ユーザーが行を選択/選択解除したときの内容を調整するためにonSelectRowonSelectAllイベントにコードを追加する必要があります。selected

onSelectRow: function(rowid, status){
    selected[rowid] = status;
    setSelectedDeviceCount();
},

onSelectAll: function(rowids, status){
    for (var i = 0; i < rowids.length; i++){
        selected[rowids[i]] = status;
    }
}

それは役に立ちますか?

于 2012-07-19T19:51:55.090 に答える
0

これを参照してください: https://stackoverflow.com/a/24941828/136219

あなたが探しているものを達成する方法のために。

于 2016-05-23T06:38:42.480 に答える