...
$grid->setGridOptions(array(
"rowNum"=>10,
"sortname"=>"OrderID",
"rowList"=>array(10,20,30),
"footerrow"=>true,
"multiselect"=>true));
$onselect = <<< ONSELECT
function(rowid, selected) {
var sar = $(this).jqGrid('getGridParam', 'selarrrow');
function sumCols(arr, grid, sumCol) { // sumCol is the index of Freight
var j, len = arr.length, sum = 0, v;
for(j=0; j< len; j++) {
v = parseFloat( $("#"+arr[j],grid).find('td:eq('+sumCol+')').html());
if(v != null) {
sum += v;
}
}
return sum;
}
var pdata=[];
pdata['Freight'] = sumCols( sar, this, 4 );
if(!isNaN(pdata['Freight'])){
$(this).jqGrid('footerData', 'set', pdata, true);
}
}
ONSELECT;
$grid->setGridEvent('onSelectRow', $onselect);
...