I have a jqGrid with multiselect.
I would like to be able to pre-check a certain number of rows if another column is true, for example.
What I've done so far is passing an element (column) from the server which contains a boolean.
I hide this column in the gridComplete event.
I can I select - and check a predefined row during the load of the grid?
UPDATE:
This is my code:
jQuery("#OrdersGrid").jqGrid({
url: $.SalesOrders.url.OrdersFetchUrl,
postData: { OrderStatus: orderStatus },
datatype: 'json',
mtype: 'POST',
colNames: ['N.Ordine', 'Cliente', 'Ragione Sociale', 'Stato', 'Fido', 'Data', ''],
colModel: [
{ name: 'Number', index: 'Number', editable: false, resizable: true, sortable: false, width: 76, align: 'left' },
{ name: 'CustomerCode', index: 'CustomerCode', editable: false, resizable: true, sortable: false, width: 50, align: 'left' },
{ name: 'CustomerName', index: 'CustomerName', editable: false, resizable: true, sortable: false, width: 410, align: 'left' },
{ name: 'Status', index: 'Status', editable: false, resizable: true, sortable: false, width: 40, align: 'center' },
{ name: 'LoCStatus', index: 'LoCStatus', editable: false, resizable: true, sortable: false, width: 40, align: 'center' },
{ name: 'Date', index: 'Date', editable: false, resizable: true, sortable: false, width: 70, align: 'right' },
{ name: 'Checked', index: 'Checked', editable: false, resizable: false, visible: false }
],
pager: $('#OrdersPager'),
rowNum: 30,
width: 794,
height: 220,
viewrecords: true,
shrinkToFit: false,
scroll: true,
rownumbers: true,
hidegrid: false,
multiselect: true,
emptyrecords: "Nessun record presente",
loadComplete: function (data) {
if (data.rows.length > 0) {
for (var i = 0; i < data.rows.length; i++) {
if (data.rows[i].cell[6] == 'true') {
jQuery("#OrdersGrid").jqGrid('setSelection', data.rows[i].id, true);
}
}
}
jQuery("#OrdersGrid").jqGrid('hideCol', 'Checked');
}
});
I've implemented Oleg's solution and it works like a charm.