jqGrid的选中行事件
jqGrid中一些方法的使用说明如下:
1、获取单个选中行的行ID
var rowid = jQuery("#gridList").jqGrid("getGridParam", "selrow"); //行序号
2、获取多个选中行的id
var ids=jQuery("#gridList").jqGrid('getGridParam','selarrrow'); //选中行号组成的数组
3、获得所有行的ID数组
var ids = jQuery("#gridList").jqGrid('getDataIDs'); //所有行的,行序号数组
4、获取单个行数据
var rowData = jQuery("#gridList").jqGrid('getRowData',rowId); //参数rowId 行号
其中,rowId是想要获取行数据的行ID。rowData 是包含整行数据的对象。例如,你想获得该行数据中的ID,可以直接用rowData.id来获得
5、设定行选中
//设定选中行,可设定多行选中: jQuery("#gridList").jqGrid('setSelection',id1); //行号 jQuery("#gridList").jqGrid('setSelection',id2);
setSelection:参数:rowid,onselectrow。选择或反选id = rowid指定的行。若onselectrow设置为true (缺省) 则触发onSelectRow事件,否则不触发。
6、设置Checkbox选中
//checkbox选中 checkedRole: function () { var rowIds = $("#gridList").jqGrid('getDataIDs'); //获取所有行Ids for (var k = 0; k < rowIds.length; k++) { var curRowData = $("#gridList").jqGrid('getRowData', rowIds[k]); for (var i = 0; i < userRoleObj.roleData.length; i++) { var checkedRoleData = userRoleObj.roleData[i]; if (curRowData.ID == checkedRoleData.ID) { $("#gridList").find("input[id='jqg_gridList_" + rowIds[k] + "']").attr("checked", true); $("#gridList").jqGrid('setSelection', rowIds[k]); } } } }
7、获取多选,选中行ID字段
multiselect: true //定义可以多选
var rowIds = $("#gridList").jqGrid('getGridParam', 'selarrrow'); var ids = []; if (rowIds.length) { for (var i = 0; i < rowIds.length; i++) { var ID = $('#gridList').jqGrid('getCell', rowIds[i], 'ID'); //name是colModel中的一属性 ids[i] = ID; } }