The setting:
ParamQuery Pro v3.3.2
var obj = {
scrollModel: { autoFit: true },
datatype: "json",
showTop: false,
numberCell: { show: false },
selectionModel: { type: 'row', fireSelectChange: true },
dataModel: {
data: []
},
pageModel: { type: "local", rPP: 20, strRpp: "{0}", strDisplay: "{0} to {1} of {2}" },
refresh: _refreshSearchGrid,
colModel: cols,
hoverMode: 'row',
selectChange: _searchGridSelectionChange
};
_self.SearchGridSelector = "[id='" + context + "'] div[controlname='" + grid.GridName + "']"
_self.SearchGrid = $(_self.SearchGridSelector).pqGrid(obj);
};
function _refreshSearchGrid(refreshEvent, ui) {
var trs = _self.SearchGrid.find("tr.pq-grid-row");
trs.mousedown(function (mousedownEvent){
if (mousedownEvent.which == 3)
{
var index = $(this).attr("pq-row-indx");
var isSelected = _self.SearchGrid.pqGrid("selection",
{ type: 'row', method: 'isSelected', rowIndx: index }
);
if (!isSelected) {
_self.SearchGrid.pqGrid("setSelection", { rowIndx: index });
}
}
});
}
I also use JQuery's contextmenu on the grid container.
What happens is that when I right-click on row 2, it changes to page 2, row 3 page 3, row 4 etc...
The culprit seems to be the line
_self.SearchGrid.pqGrid("setSelection", { rowIndx: index });
For some reason, this selects the row as intended, but it also change the page to the row index.
Strange behaviour...
I'm still looking for an extra parameter, but if you have an answer, please do no hesitate to share it with me.