These bugs are demonstrated in this test case:
<head>
<link rel="stylesheet" href="paramquery/pqgrid.min.css">
<script type="text/javascript" src="paramquery/jquery.js"></script>
<script type="text/javascript" src="paramquery/jquery-ui.js"></script>
<script type="text/javascript" src="paramquery/pqgrid.min.js"></script>
<script type="text/javascript" src="paramquery/generatedata.js"></script>
<style>
.pq-grid-title-row .pq-grid-col {
font-weight: normal;
text-transform: uppercase;
background-color: #F5F5F5;
}
.pq-grid-col.pq-col-sort-asc, .pq-grid-col.pq-col-sort-desc{
background-color: #8dbdd8;
background-repeat: no-repeat;
background-position: center right;
}
</style>
<script type="text/javascript">
$(document).ready(function () {
var data = [
["Beate", "Fuller", 585787, 913460, 7, 28],
["Cheryl", "Wilson", 102961, 821096, 7, 21],
["Petra", "Petersen", 731172, 728432, 10, 38],
["Yoshi", "Nodier", 911861, 668539, 4, 16],
["Beate", "Nagase", 358816, 475010, 7, 21],
["Martin", "Davolio", 648916, 368401, 8, 12],
["Yoshi", "Winkler", 832008, 218008, 11, 41.8],
["Martin", "Murphy", 676375, 211160, 5, 25],
["Elio", "Fuller", 845996, 148232, 10, 17.5]
];
var obj = {
sortable: true,
height: '300',
sortModel: {
ignoreCase: true,
sorter: [ { dataIndx: 3, dir: 'down' } ]
},
selectionModel: { type: 'row' },
scrollModel: { autoFit: true },
numberCell: { width: 70, resizable: true },
showTitle: false,
//filterModel: { on: true, mode: "AND", header: true },
virtualX: true, virtualY: true,
resizable: true,
colModel: [
{ title: 'First Name', dataType: 'string', filter: { type: "textbox", condition: 'begin', listeners: ['keyup']} },
{ title: 'Last Name', dataType: 'string'},
{ title: 'Product', dataType: 'string' },
{ title: 'Quantity', dataType: 'float' },
{ title: 'Unit Price', dataType: 'float' },
{ title: 'Total', dataType: 'float' }
],
dataModel: {
data: data
}
};
$("#grid").pqGrid(obj);
var finalTime = new Date();
setInterval(function() {
for (var i = 0; i < data.length; i++) {
data[i][2] = Math.floor((Math.random() * 999999) + 1);
data[i][3] = Math.floor((Math.random() * 999999) + 1);
$("#grid").pqGrid('updateRow', {
rowList: [
{rowIndx: data[i][0], newRow: data[i]}
]
});
}
$("#grid").pqGrid('refreshDataAndView');
}, 1000);
});
</script>
</head>
<body class="default">
<div style="height: 300px; overflow: auto">
<div id="grid""></div>
</div>
</body></html>