JqGird 事件 方法(二)

来源:互联网 发布:景甜到底什么来头知乎 编辑:程序博客网 时间:2024/06/05 17:16

Jqgrid学习 -------事件

参考官网链接http://www.trirand.com/jqgridwiki/doku.php?id=wiki:methods

· $("#gridid").jqGrid({

· })

 

事件

参数

备注

afterInsertRow

rowid, rowdat, name

当插入每行时触发。

rowid插入当前行的id

rowdata插入行的数据,格式为name: value

namecolModel中的名

beforeRequest

none

向服务器端发起请求之前触发此事件, 但如果datatype是一个function时例

beforeSelectRow

rowid, e

当用户点击当前行,在未选择此行时触发。

rowid:此行id

e:事件对象。返回值为ture或者false。如果返回true则选择完成,如果返回false则不会选择此行也不会触发其他事

gridComplete

none

当表格所有数据都加载完成, 而且其他的处理也都完成时触发此事件,排序,翻页同样也会触发此事

loadComplete

xhr

当从服务器返回响应时执行

xhrXMLHttpRequest

loadError

xhr,status,error

如果请求服务器失败则调用此方法。xhrXMLHttpRequest对象;satus:错误类型,字符串类型;errorexception

onCellSelect

rowid,iCol,cellcontent,e

当点击单元格时触发。

rowid:当前行idiCol:当前单元格索引;cellContent:当前单元格内容;eevent

ondblClickRow

rowid,iRow,iCol,e

双击行时触发。

rowid:当前行id

iRow:当前行索引位置;

iCol:当前单元格位置索引;

e:event

onHeaderClick

gridstate

当点击显示/隐藏表格的那个按钮时触发;

gridstate:表格状态,可选值:visible or hidden

onPaging

pgButton

点击翻页按钮, 填充数据之前触发此事件,同样当输入页码跳转页面时也会触发此事

onRightClickRow

rowid, iRow, iCol, e

在行上右击鼠标时触发此事件。

rowid:当前行id

iRow:当前行位置索引;

iCol:当前单元格位置索引;

eevent

onSelectAll

aRowids,status

multiselectture且点击头部的checkbox时才会触发此事件aRowids:所有选中行的id集合,为一个数组。

statusboolean变量说明checkbox的选择状态,true选中false不选中。无论checkbox是否选择,aRowids始终有

onSelectRow

rowid,status

当选择行时触发此事件。

rowid:当前行id

status:选择状态, 当multiselecttrue时此参数才可

onSortCol

index,iCol,sortorder

当点击排序列但是数据还未进行变化时触发此事件。

indexnamecolModel中位置索引;

iCol:当前单元格位置索引;

sortorder:排序状态:desc或者asc

resizeStart

event, index

当开始改变一个列宽度时触发此事件。

eventevent对象;

index:当前列在colModel中位置索

resizeStop

newwidth, index

当列宽度改变之后触发此事件。

newwidth:列改变后的宽度;

index:当前列在colModel中的位置索

serializeGridData

postData

向服务器发起请求时会把数据进行序列化,用户自定义数据也可以被提交到服务器

 

Jqgrid学习 -------方法

jqGrid的方法,从3.6开始已经完全兼容jQuery UI库。

jQuery("#grid_id").jqGridMethod( parameter1,...parameterN );


如果使用新的API:

jQuery("#grid_id").jqGrid('method', parameter1,...parameterN );

jQuery("#grid_id").jqGrid('setGridParam',{...}) .jqGrid('hideCol',"somecol").trigger("reloadGrid");

jqGrid配置使用新的api

· <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 

· <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 

· <head> 

· <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

· <title>My First Grid</title> 

·   

· <link rel="stylesheet" type="text/css" media="screen" href="css/ui-lightness/jquery-ui-1.7.1.custom.css" /> 

· <link rel="stylesheet" type="text/css" media="screen" href="css/ui.jqgrid.css" /> 

·   

· <script src="js/jquery-1.3.2.min.js" type="text/javascript"></script> 

· <script src="js/i18n/grid.locale-en.js" type="text/javascript"></script> 

·<script type="text/javascript"> 

·     jQuery.jgrid.no_legacy_api = true; 

· </script> 

· <script src="js/jquery.jqGrid.min.js" type="text/javascript"></script> 

·   

· </head> 

· <body> 

· </body> 

· </html>

 

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为新行的iddata为新行的数据,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

清除表格当前加载的数据。如果clearfootertrue时则此方法删除表格最后一行的数

delRowData

rowid

成功为true否则为false

根据rowid删除行,但不会从服务器端删除数

footerData

action,data, format

jgGrid

设置或者取得底部数据。action“get”或者“set”,默认为“get”,如果为“get”返回值为name:valuenamecolModel中名称。如果为“set”则值为namevaluenamecolModel中的名称。format:默认为true,当为true时,在设置新值时会调用formatter格式化数

getCell

rowid, iCol

单元格内

返回指定rowidiCol的单元格内容,iCol既可以是当前列在colModel中的位置索引也可以是name值。注意:在编辑行或者单元格时不能使用此方法,此时返回的并不是改变的值,而是原始

getCol

colname, returntype, mathoperation

array[] or value

返回列的值。colname既可以是当前列在colModel中的位置索引也可以是name值。returntype指定返回数据的类型,默认为false。当为false时,返回的数组中只包含列的值,当为true时返回数组是对象数组,具体格式{id:rowid, value:cellvalue} id为行的idvalue为列的值。如:[{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

如果rowcontentfalse,返回行所在的索引位置,id为行idrowcontent默认为false。如果rowconentture则返回的为行对象,如果找不到行则返回false

getRowData

rowid or none

array[]

返回指定行的数据,返回数据类型为name:valuenamecolModel中的名称,value为所在行的列的值,如果根据rowid找不到则返回空。在编辑模式下不能用此方法来获取数据,它得到的并不是编辑后的

hideCol

colnameor[colnames]

jqGrid

如果参数为一个列名则隐藏此列,如果给定的是数组则隐藏指定的所有列。格式: [“name1”,”name2”]

remapColumns

permutation, updateCells, keepHeader

none

调整表格列的显示顺序,permutation为当前列的顺序,假如值是[1,0,2],那么第一列就会在第二位显示。如果updateCellsture则是对单元格数据进行重新排序,如果keepHeadertrue则对header数据显示位置进行调

resetSelection

none

jqGrid

选择或者反选行数据,在多选模式下也同样起作

setCaption

caption

jqGrid

设置表格的标

setCell

rowid,colname, data, class, properties

jqGrid

改变单元格的值。rowid:当前行idcolname:列名称,也可以是列的位置索引,从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:表格宽度,象素值;shrinktrue或者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…}

namecolModel中名称;cssprop:如果是string则会使用addClass方法将其加入到行的css中,如果是array或者对象则会直接加到style属性

setSelection

rowid,onselectrow

jqGrid

选择或反选指定行。如果onselectrowture则会触发事件onSelectRowonselectrow默认为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

 

 

jqGrid的方法

方法名

参数

返回值

说明

filterGrid

grid_id,params

HTML

构造jqGrid的查询界面。grid_id:表格idparams:参

filterToolbar

params

jqGrid

同上。不同的是搜索输入框在header层下

getColProp

colname

array

返回指定列的属性集合。namecolModel中名

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').如果reloadtrue则会重新加载数

updateGridRows

data,rowidname,jsonreader

boolean

修改表格中某行的数据,data数据格式:[{name:value,name1:value1…}, {name:value,name2:value2…}]namecolModel中的名称;rowidname某行的名称。jsonreaderboolean值,默认false。如果为true则是定义数据的格式,data的值并不是namevalue形式而只是value


0 0
原创粉丝点击