jqGrid 常用方法
方法名 | 参数 | 返回值 | 说明 |
addJSONData | data | none | 使用传来的data数据填充表格。使用方法: var mygrid = jQuery(”#”+grid_id)[0]; var myjsongrid = eval(”(”+jsonresponse.responseText+”)”); mygrid.addJSONData(myjsongrid); myjsongrid = null; jsonresponse =null; |
addRowData | rowid,data, position, srcrowid | 成功为true, 否则为false | 根据参数插入一行新的数据,rowid为新行的id,data为新行的数据,position为新增行的位置,srcrowid为新增行的参考位置。data数据格式:{name1:value1,name2: value2…} name为在colModel中指定的名称 |
addXMLData | data | none | 根据传来的数据填充表格。用法:var mygrid = jQuery(”#”+grid_id)[0]; mygrid.addXmlData(xmlresponse.responseXML); |
clearGridData | clearfooter | jqGrid对象 | 清除表格当前加载的数据。如果clearfooter为true时则此方法删除表格最后一行的数据 |
delRowData | rowid | 成功为true否则为false | 根据rowid删除行,但不会从服务器端删除数据 |
footerData | action,data, format | jgGrid对象 | 设置或者取得底部数据。action:“get”或者“set”,默认为“get”,如果为“get”返回值为name:value,name为colModel中名称。如果为“set”则值为name:value,name是colModel中的名称。format:默认为true,当为 true时,在设置新值时会调用formatter格式化数值 |
getCell | rowid, iCol | 单元格内容 | 返回指定rowid,iCol的单元格内容,iCol既可以是当前列在colModel中的位置索引也可以是name值。注意:在编辑行或者单元格时不能使用此方法,此时返回的并不是改变的值,而是原始值 |
getCol | colname, returntype, mathoperation | array[] or value | 返回列的值。colname既可以是当前列在colModel中的位置索引也可以是name值。returntype指定返回数据的类型,默认为false。当为false时,返回的数组中只包含列的值,当为true时返回数组是对象数组,具体格式 {id:rowid, value:cellvalue} ,id为行的id,value为列的值。如: [{id:1,value:1},{id:2,value:2}…]。mathoperation 可选值为'sum, 'avg', 'count' |
getDataIDs | none | array[] | 返回当前grid里所有数据的id |
getGridParam | name | mixed value | 返回请求的参数信息 |
getInd | rowid,rowcontent | mixed | 如果rowcontent为false,返回行所在的索引位置,id为行id。rowcontent默认为false。如果rowconent为ture则返回的为行对象,如果找不到行则返回false |
getRowData | rowid or none | array[] | 返回指定行的数据,返回数据类型为name:value,name为colModel中的名称,value为所在行的列的值,如果根据rowid找不到则返回空。在编辑模式下不能用此方法来获取数据,它得到的并不是编辑后的值 |
hideCol | colnameor[colnames] | jqGrid对象 | 如果参数为一个列名则隐藏此列,如果给定的是数组则隐藏指定的所有列。格式: [“name1”,”name2”] |
remapColumns | permutation, updateCells, keepHeader | none | 调整表格列的显示顺序,permutation为当前列的顺序,假如值是[1,0,2],那么第一列就会在第二位显示。如果updateCells为ture则是对单元格数据进行重新排序,如果keepHeader为true则对header数据显示位置进行调整 |
resetSelection | none | jqGrid对象 | 选择或者反选行数据,在多选模式下也同样起作用 |
setCaption | caption | jqGrid对象 | 设置表格的标题 |
setCell | rowid,colname, data, class, properties | jqGrid对象 | 改变单元格的值。rowid:当前行id;colname:列名称,也可以是列的位置索引,从0开始;data:改变单元格的内容,如果为空则不更 新;class:如果是string则会使用addClass方法将其加入到单元格的css中,如果是array则会直接加到style属性中;properties:设置单元格属性 |
setGridParam | object | jqGrid对象 | 设置grid的参数。有些参数的修改必须要重新加载grid才可以生效,这个方法可以覆盖事件 |
setGridHeight | new_height | jqGrid对象 | 动态改变grid的高度,只能对单元格的高度进行设置而不能对表格的高度进行动态修改。new_height:可以是象素值,百分比或者"auto" |
setGridWidth | new_width,shrink | jqGrid对象 | 动态改变表格的宽度。new_width:表格宽度,象素值;shrink:true或者false,作用同shrinkToFit |
setLabel | colname, data, class, properties | jqGrid对象 | 给指定列设置一个新的显示名称。colname:列名称,也可以是列的位置索引,从0开始;data:列显示名称,如果为空则不修改;class:如果是 string则会使用addClass方法将其加入到单元格的css中,如果是array则会直接加到style属性中;properties:设置 label的属性 |
setRowData | rowid,data, cssprop | 成功true否则false | 更新行的值,rowid为行id。data值格式:{name1:value1,name2: value2…} name为colModel中名称;cssprop:如果是string则会使用addClass方法将其加入到行的css中,如果是array或者对象 则会直接加到style属性中 |
setSelection | rowid,onselectrow | jqGrid对象 | 选择或反选指定行。如果onselectrow为ture则会触发事件onSelectRow,onselectrow默认为ture |
showCol | colname | jqGrid | 显示列。colname可以是数组[“name1”,”name2”],但是name1或者name2必须是colModel中的name |
trigger(“reloadGrid”) | none | jqGrid对象 | 重新加载当前表格,也会向服务器发起新的请求 |
updateColumns | none | none | 同步表格的宽度,用在表格拖拽时,用法:var mygrid=jQuery(”#grid_id”)[0];mygrid.updateColumns(); |
jqGrid的通用方法和设置
这些方法并不和jqGrid对象绑定,可以随意使用:
jQuery.jgrid.jqGridFunction( parameter1,...parameterN );
函数名 | 参数 | 返回值 | 说明 |
ajaxOptions | 空对象 | none | 这个函数可以改变jqgrid中用到的ajax请求参数,这个函数可以覆盖当前所有ajax请求设置。从3.6版本开始起有3个级别的ajax设置:第一 个级别就是在模块中设置ajax请求;第二个级别就是通过此函数设置;第三级别的设置是控制全局ajax请求的设置:jQuery.extend(jQuery.ajax({method specific options}, ajaxOptions, ThirdLevelajaxSettinds)); 当然我们也可以单独设置ajax的参数 |
jqID | string | 解析后的string | 转义字符串,把两个反斜杠(\\)转化为单个反斜杠(\) |
jgrid.htmlDecode | string | 转换后string | 把转码后的字符串还原 |
jgrid.htmlEncode | string | 编码后的string | 把字符串编码 |
jgrid.format | string | 格式化后string | 简单字符串模板。用法:Example jQuery.jqgformat(“Please enter a value between {0} and {1}.”, 4,result : “Please enter a value between 4 and 8.” |
jgrid.getCellIndex | cell | index | 这个方法是用来修复在ie7里的一个bug |
jgrid.stringToDoc | xmlstring | xmlDoc | 把xmlstring转换为dom对象 |
jgrid.stripHtml | content | new_content | 去掉html标签返回标签中内容 |
jgrid.parse | jsonstring | 对象 | 把一个jsonstring转换为json对象 |
其他方法
方法名 | 参数 | 返回值 | 说明 |
filterGrid | grid_id,params | HTML对象 | 构造jqGrid的查询界面。grid_id:表格id;params:参数 |
filterToolbar | params | jqGrid对象 | 同上。不同的是搜索输入框在header层下方 |
getColProp | colname | array | 返回指定列的属性集合。name为colModel中名称 |
GridDestroy | grid_id | boolean | 从dom上删除此grid |
GridUnload | grid_id | boolean | 跟GridDestroy不同的是table对象跟pager对象并不会被删除,以便下次使用 |
setGridState | state | jqGrid对象 | 设置grid的状态,显示或者隐藏。这个方法不会触发onHeaderClick 事件。 |
setColProp | colname, properties | jqGrid对象 | 设置新的属性,对于动态改变列属性是非常有用的,但是有些属性的修改并不会起效。用法:jQuery(”#grid_id”).setColProp('colname',{editoptions:{value:“True:False”}}); |
sortGrid | colname, reload | jqGrid对象 | 按指定列进行排序。效果同setGridParam({sortname:'myname'}).trigger('reloadGrid'). 如果reload为true则会重新加载数据 |
updateGridRows | data,rowidname,jsonreader | boolean | 修改表格中某行的数据,data数据格式:[{name:value,name1:value1…}, {name:value,name2:value2…}],name为colModel中的名称;rowidname某行的名称。 jsonreader:boolean值,默认false。如果为true则是定义数据的格式,data的值并不是name:value形式而只是 value |
1.clearGridData(clearfooter) 清除表格当前加载的数据。如果clearfooter为true时则此方法删除表格最后一行的数据。
$('#jqgrid').clearGridData(true); //清除表格当前加载的数据 $("#searchbtn").click(function () {$('#jqgrid').clearGridData(true);//删除表格的最后一行initTable(); });$("#jqgrid").jqGrid('clearGridData');
2.addRowData(rowid,data, position, srcrowid) 根据参数插入一行新的数据,rowid为新行的id,data为新行的数据,position为新增行的位置,srcrowid为新增行的参考位置。data数据格式:{name1:value1,name2: value2…} name为在colModel中指定的名称
var colModel = [{ name: 'legalPersonName', label: '法人', sortable: false },{ name: 'blCampusName', label: '校区', sortable: false },{ name: 'studentName', label: '学生姓名', sortable: false },{ name: 'invoiceHeaderName', label: '发票抬头', sortable: false },{ name: 'blueCreateTime', label: '开票时间', sortable: false },{ name: 'blueCreateUserName', label: '开票人', sortable: false },{ name: 'amount', label: '开票金额', sortable: false },{ name: 'invoiceNumber', label: '发票号码' }];var gridRowData = [{id:data.id,legalPersonName: data.legalPersonName,blCampusName: data.blCampusName,studentName: data.studentName,invoiceHeaderName: data.invoiceHeaderName,blueCreateTime: data.blueCreateTime||data.createTime,blueCreateUserName: data.blueCreateUserName||data.createUserName,amount: data.amount,invoiceNumber: data.invoiceNumber||'-'}];initEvent(); initData();Util.modalExec(modal.parents('.modal'),initData);function initGrid() {gridContainer.html(gridHtm);modalJqgrid = modal.find('#modalLessonJqgrid');var params = {datatype:"local",colModel: colModel,pager: '#pagejqgrid',sortorder: "desc",maxHeight:60};EduBoss.generateTable(modalJqgrid, params);$.each(gridRowData,function(i){modalJqgrid.jqGrid('addRowData',gridRowData[i],gridRowData);//data数据格式:{name1:value1,name2: value2…} name为在colModel中指定的名称})}
3.delRowData 根据rowid删除行,但不会从服务器端删除数据
jqgrid.jqGrid('delRowData', rowid);
4.getGridParam(option) option为jqgrid初始化的参数如:url,colModel,rowNum,selarrrow等
grid.jqGrid('getGridParam', 'colModel')//拿到colModel的参数信息
$jqgridCached.jqGrid('getGridParam','selarrrow');//拿到jgrid中所有选择的数据的id
function initTable() { EduBoss.generateTable(productInfoTable, {url:Api.getYingYeReportWebControllerSummary,colModel: colModel,nosort: true,footerrow: true,loadComplete: function () {//最底下统计栏var sumObj = {}; // 汇总数据var size = 0;$(productInfoTable.jqGrid('getGridParam', 'colModel')).each(function (i) {if (i == 0) {sumObj[$(this).attr('name')] = '合计'; //??怎么直接可以$(this).attr("name")?直接拿到了name对应的字符串了呢?} //this是一个对象,$(this).attr("name")?
//productInfoTable.jqGrid('getGridParam', 'colModel') 返回的是一个数组,就是colModal
if ($(this).attr('sum')) { size++; sumObj[$(this).attr('name')] = parseFloat(productInfoTable.getCol($(this).attr('name'), false, 'sum')).toFixed(2); } }); if (size > 0) { productInfoTable.footerData('set', sumObj); } else { $(".footrow").remove(); } } }) }
var text = {yyy:"yys"};
console.log($(text).attr("yyy"))=》 为什么会输出yys?
5.footerData(action,data, format) 设置或者取得底部数据。action:“get”或者“set”,默认为“get”,如果为“get”返回值为name:value,name为colModel中名称。如果为“set”则值为name:value,name是colModel中的名称。format:默认为true,当为 true时,在设置新值时会调用formatter格式化数值
loadComplete : function(data){ highchartsObj.loadData();var sumObj = {}; // 汇总数据var size = 0; $($("#jqgrid").jqGrid('getGridParam','colModel')).each(function(i){//遍历每一列if(i==0){sumObj[$(this).attr('name')] = '合计';}if($(this).attr('sum')){size++;//var sumNum = ;sumObj[$(this).attr('name')] = parseFloat($("#jqgrid").getCol($(this).attr('name'),false,'sum')).toFixed(0);}});if(size > 0){$("#jqgrid").footerData('set', sumObj);}else{$(".footrow").remove();} },
6.getCol(colname, returntype, mathoperation)返回列的值。colname既可以是当前列在colModel中的位置索引也可以是name值。returntype指定返回数据的类型,默认为false。当为false时,返回的数组中只包含列的值,当为true时返回数组是对象数组,具体格式 {id:rowid, value:cellvalue} ,id为行的id,value为列的值。如: [{id:1,value:1},{id:2,value:2}…]。mathoperation 可选值为'sum, 'avg', 'count'
7.getCell (rowid, iCol) 返回指定rowid,iCol的单元格内容,iCol既可以是当前列在colModel中的位置索引也可以是name值。注意:在编辑行或者单元格时不能使用此方法,此时返回的并不是改变的值,而是原始值
8.getDataIDs() 返回当前grid里所有数据的id
loadComplete: function () {var ids = jqgrid.jqGrid('getDataIDs');for (var i = 0; i < ids.length; i++) {var cl = ids[i];var row = jqgrid.jqGrid('getRowData', cl); } }
9.getRowData(rowid or none) 返回指定行的数据,返回数据类型为name:value,name为colModel中的名称,也就是name。value为所在行的列的值,如果根据rowid找不到则返回空。在编辑模式下不能用此方法来获取数据,它得到的并不是编辑后的值
var row = jqgrid.jqGrid('getRowData', cl);
10.setGridParam (object) 设置grid的参数。有些参数的修改必须要重新加载grid才可以生效,这个方法可以覆盖事件
if(jqgrid.parents(".ui-corner-all").length > 0){ //要等table加载出来后再重新设置他的postData才有效jqgrid.jqGrid("setGridParam", {postData: {"studentId":studentId}}).trigger("reloadGrid");}
function search(){var params = EduBoss.commonUtils.tranFormVarToJson(_form);params["id"] = schoolId;params["region.id"] = regionId;params["schoolType.id"] = schoolTypeId;jqgrid.jqGrid("setGridParam", {page : 1});jqgrid.jqGrid("setGridParam",{postData : params}).trigger("reloadGrid");}
11.getGridParam
12.setRowData(rowid,data, cssprop) 更新行的值,rowid为行id。data值格式:{name1:value1,name2: value2…} name为colModel中对应的每一个name对应的值;cssprop:如果是string则会使用addClass方法将其加入到行的css中,如果是array或者对象 则会直接加到style属性中
jqgrid.jqGrid('setRowData', ids[i], {act: actStr }); { name: 'legalPersonName', label: '法人', width: 10, sortable:false }, { name: 'blCampusName', label: '校区', fixedFlag: true, sortable: false }, $("#orgGrid").jqGrid('setRowData',ids[i],{'legalPersonName':"2008-10-01",phone:"test",'blCampusName':"note",orgName:"200.00"});//根据Id主键,更新对应的数据
13.setSelection (rowid,onselectrow) 选择或反选指定行。如果onselectrow为ture则会触发事件onSelectRow,onselectrow默认为ture
onSelectRow: function (rowid) {var selectId = jqgridCustomer.jqGrid('getGridParam', 'selarrrow')[0];selectId === rowid || jqgridCustomer.setSelection(selectId, false);console.log(jqgridCustomer.setSelection(selectId, false)) },
14.trigger(“reloadGrid”) 重新加载当前表格,也会向服务器发起新的请求
转载于:https://www.cnblogs.com/susan-home/p/8535157.html
jqGrid 常用方法相关推荐
- jqGrid常用方法
var jqGrid = $("#jqGrid");// 获取选中行id[单行],test1就是最先一个行id var test1 = jqGrid.jqGrid("ge ...
- jqGrid常见问题、常用方法总结
最近项目中用jqGrid来实现页面中的表格数据,使用过程中感触颇多,总体发现jqGrid灵活性还是很好的,我使用过程中参考了API文档,感觉这个API文档挺全面的,文档地址为: jqGrid实例中文版 ...
- jqGrid使用整理
jqGrid是一款处理表格展现的jQuery插件,支持分页.滚动加载.搜索.锁定.拖动等一系列对表格的常规操作.以下是最近项目中实践jqGrid的整理 1.引入到项目中来 jqGrid的主页在http ...
- jqGrid API 及用法
jqGrid 是一个用来显示网格数据的jQuery插件,文档比较全面,附带中文版本. 不知是不是官方地址,不过有像http://www.trirand.com/blog/ dn.net/wubing9 ...
- 30 个 php 操作 redis 常用方法代码例子
这篇文章主要介绍了 30 个 php 操作 redis 常用方法代码例子 , 本文其实不止 30 个方法 , 可以操作 string 类 型. list 类型和 set 类型的数据 , 需要的朋友可以 ...
- jqgrid如何渲染表格数据_jqgrid,jquery_jqGrid pivot 增加分项小计,jqgrid,jquery,jquery插件,javascript,表格 - phpStudy...
jqGrid pivot 增加分项小计 1.表格用的插件是jqGrid pivot. 想在每一个单数 下面的分项后面加一个小计.看了插件demo 没找到每个分项都可以有小计的. 总的横向和纵向总计都是 ...
- SearchRequestBuilder常用方法说明
SearchRequestBuilder常用方法说明 (1) setIndices(String... indices):上文中描述过,参数可为一个或多个字符串,表示要进行检索的index:(2) s ...
- 【jqgrid】疑难杂症及解决方法(随缘更新)
最近在学习使用jqgrid,由于初次使用就要应用的工程的开发当中,还是遇到了不小的麻烦,在此梳理遇到的问题及解决方法. 遇到问题: 1.如何解决翻页键不好用的问题 2.如何调整grid的宽度和高度 3 ...
- 3-RACSignal 常用方法
RACSingal的常用方法 一 基本使用 1map // 0 创建信号提供者// RACSubject,既能发送信号,又能订阅信号// 多用于代理,相当于OC里的delegate或者回调blockR ...
最新文章
- Java数据结构和算法( 二 ) ## 数组
- 电脑越来越慢怎么办_电脑维修|你的电脑肯定遇到过这些故障
- basler相机的触发线是那两脚_机器视觉相机类型以及接口标准详解
- 招不到电子工程师,这锅谁来背?
- javax.cache_新的Java缓存标准(javax.cache)
- 女大学生毕业相亲程序员,吃了一顿大排档,一看车钥匙后犹豫了!
- 在Windows 10上安装TensorFlow 2.2.0 RC4版
- 华为否认鸿蒙为噱头;谷歌公布 6 大 iOS 漏洞;GitLab 又发安全补丁 | 极客头条...
- 华为负一屏Java_干货分享:华为手机负一屏使用设置方法详解,不会的赶紧了解一下...
- js函数中变量声明提前
- 2018下半年初级程序员考试时间
- 表白网页制作_表白网页_创意表白_表白神器
- Unity之使用Shader实现背景循环播放
- 四川金弘同创:拼多多产品要怎么上新
- Windows下部署ubuntu16.04+anaconda2.7+tensorflow
- HTML+CSS美食静态网页设计——简单牛排美食餐饮(9个页面)公司网站模板企业网站实现...
- 所有城市及经纬度数据(2021-8-28)
- 知到网课大学生心理健康教育考试试题|真题题库(含答案)
- 硬盘初始化分区选择GPT还是MBR?
- 联想微型计算机怎么调暗屏幕,演示一下联想一体机调节屏幕亮度的详细步骤!...
热门文章
- iis开启php验证码,php结合GD库实现中文验证码的简单方法
- 虚函数和纯虚函数的区别是什么?
- C语言数据类型转换(自动类型转换 强制类型转换)
- 易语言 网页用什么编码_通常提到的编码器是干什么用的
- android 第三方圆弧进度条,android 可配置的圆弧进度条
- msflexgrid允许大选择_选择复式楼、跃层和别墅的装修业主如何做好家里的楼梯...
- sqlmap绕过d盾_Waf功能、分类与绕过
- [渝粤教育] 武汉理工大学 刑法 参考 资料
- 【渝粤教育】国家开放大学2018年春季 0273-21T中国现代文学 参考试题
- 【渝粤题库】陕西师范大学600001物理化学(上) 作业(专升本)