ページャープラグインで SlickGrid を使用しています。私の意図は、SlickGrid に明細項目を表示し、ユーザーが行をダブルクリックして詳細を取得できるようにすることです。正常に動作しているように見えるコードがありますが、これを難しい方法で行っているように感じます。
grid.onDblClick.subscribe(function(e, args) {
var selectedIndex = parseInt(grid.getSelectedRows());
var pageInfo = dataView.getPagingInfo();
var pageSize = pageInfo.pageSize;
var pageNum = pageInfo.pageNum;
var idx = pageSize*pageNum + selectedIndex;
var asset = rows[idx].assetName;
alert("Selected Asset is " + asset);
});
grid.getData()[selectedIndex]
人々が aまたは aを行った場所に投稿された他の質問を見てきましたdataView.getItemById(selectedIndex)
が、selectedIndex
常に 0 から何かの数字であるため、どのページにいても、リストの最初のページから常にデータを取得しました。ページで選択したインデックスをデータ配列の実際の行にマップする直接的な方法はありますか? 繰り返しますが、上記のコードは問題なく動作しているようです。明らかなメソッドがどこかに欠けているように感じます。