jqGrid方法整理

一、colModel 表体结构配置

name   必要的属性,具有唯一标识性,如在弹出的editform窗体中,将作为input的name属性 
index        为排序用,最方便的是设为数据库字段 
width        150,宽度,数值
align        left,center,right 
detefmt        date:true 
editable    flase 
editoptions    edittype为先决条件,此为值,[] 
editrules    编辑规范 
edittype    text,textarea,select,checkbox,password 
formatoptions 
formatter 
hidedlg        false (appear in the modal dialog) 
hidden        false 在加载时是否隐藏列 
jsonmap        声明json的格式 
key        false 
label        当没有设置colNames时,在列里用此代替,此项也为空时,就是name代替 
resizable    true,列宽可调节 
search        true,可搜索
sortable    true,可排序
sorttype    text,int,float,date,排序子段类型
xmlmap        声明xml的格式

二、getGridParam、setGridParam:

getGridParam方法:
  getGridParam("url"): 获取当前的AJAX的URL 
  getGridParam("sortname"):排序的字段 
  getGridParam("sortorder"):排序的顺序 
  getGridParam("selrow"):得到选中行的ID 
  getGridParam("page"):当前的页数 
  getGridParam("rowNum"):当前有多少行
  getGridParam("datatype"):得到当前的datatype 
  getGridParam("records"):得到总记录数

getGridParam("selrow"):单选时,返回选中行的ID
  getGridParam("selarrrow"):可以多选时,返回选中行的ID

getGridParam("reccount"):获得当前列表行数

 
setGridParam方法:
  setGridParam({url:newvalue}):可以设置一个grid的ajax url,可配合trigger("reloadGrid")使用 
  setGridParam({sortname:newvalue}):设置排序的字段
  setGridParam({sortorder:newvalue}):设置排序的顺序asc or desc 
  setGridParam({page:newvalue}):设置翻到第几页
  setGridParam({rowNum:newvalue}):设置当前每页显示的行数
  setGridParam({datatype:newvalue}):设置新的datatype(xml,json)
 
     形式2:jQuery('#tableID').jqGrid('getGridParam','url'))
           jQuery("#tableID").jqGrid('setGridParam',{page:2}).trigger("reloadGrid")

三、getRowData  

    jqGrid('getRowData', id) :获取选中行数据(json)

四、setSelection  

setSelection("1", true):设定选中行,可设定多行选中 true:重新加载表格数据, false:不重新加载表格数据

五、 resetSelection  

resetSelection():重置选中行

六、getCell  

jqGrid('getCell',id,colnum):获得某单元格的数据

七、getDataIDs  

jqGrid('getDataIDs'):获得所有行的ID数组

示例步骤

1、参数设定

me.grid_id = "#PPR803MenuNameMstMnt_jqGrid";
me.g_url = "PPR/PPR803MenuNameMstMnt/FncGetSql_HPROGRAMMST";
me.pager = "";
me.sidx = '';

me.option =
{
rowNum : 9999,
recordpos : "left",
multiselect : false,
rownumbers : true,
caption : "",
multiselectWidth : 30,
scroll : 1
};

me.colModel = [
{
name : "PRO_NO",
label : "PRO_NO",
index : "PRO_NO",
sortable : false,
hidden : true
},
{
name : "PRO_NM",
label : "xx名",
index : "PRO_NM",
width : 323,
sortable : false,
align : 'left'
},
{
name : "USER_AUTH_CTL_NM",
label : "xx権限管理",
index : "USER_AUTH_CTL_NM",
width : 200,
sortable : false,
align : 'left'
},
{
name : "UPD_DATE",
label : "更新日",
index : "UPD_DATE",
sortable : false,
hidden : true
}];

2、Controller

$tmpJqgridShow = $this -> ClsComFnc -> FncCreateJqGridShow($this -> result['data']);
$sortstr = $tmpJqgridShow['sortStr'];
$start = $tmpJqgridShow['start'];
$limit = $tmpJqgridShow['limit'];
$page = $tmpJqgridShow['page'];
$totalPage = $tmpJqgridShow['totalPage'];
$tmpCount = $tmpJqgridShow['count'];

$tmpJqgrid = $this -> ClsComFnc -> FncCreateJqGridData($this -> result["data"], $totalPage, $page, $tmpCount);
$this -> result = $tmpJqgrid;

3、加载

方法 ①:初期化方法里面

hiromaz.common.jqgrid.init(me.grid_id, me.g_url, me.colModel, me.pager, me.sidx, me.option);
hiromaz.common.jqgrid.set_grid_width(me.grid_id, 600);
hiromaz.common.jqgrid.set_grid_height(me.grid_id, 290);

调用的地方

hiromaz.common.jqgrid.reload(me.grid_id, data, me.complete_fun);
hiromaz.common.jqgrid.set_grid_width(me.grid_id, 600);
hiromaz.common.jqgrid.set_grid_height(me.grid_id, 290);

方法 ②:

调用的地方

hiromaz.common.jqgrid.show(me.grid_id, me.g_url, me.colModel, me.pager, me.sidx, me.option, data, me.complete_fun);
hiromaz.common.jqgrid.set_grid_width(me.grid_id, 600);
hiromaz.common.jqgrid.set_grid_height(me.grid_id, 290);

实用方法

1、获取选中行数据

var id = $(me.grid_id).jqGrid('getGridParam','selrow');
var rowData = $(me.grid_id).jqGrid('getRowData',id);

上一篇:c# – 使用Magick.NET创建多页TIFF


下一篇:K2 Blackpearl中从数据库直接删除流程实例之K2ServerLog表