http://www.cnblogs.com/hongzai/p/3159546.html
1. getGridParam
這個方法用來獲得jqGrid的選項值。它具有一個可選參數name,name即代表着jqGrid的選項名,如果不傳入name參數,則會返回 Jqgrid整個選項options。例如:
1
2
3
4
5
6
|
var id = $( "#gridTable" ).jqGrid( "getGridParam" , "selrow" ); //獲得選中行的ID var sort = $( "#gridTable" ).jqGrid( "getGridParam" , "sortname" ); //獲得排序的字段 var page = $( "#gridTable" ).jqGrid( "getGridParam" , "page" ); //獲得當前的頁數 var row = $( "#gridTable" ).jqGrid( "getGridParam" , "rowNum" ); //獲得當前頁的行數 var count = $( "#gridTable" ).jqGrid( "getGridParam" , "records" ); //獲得總記錄數 var rows = $( "#gridTable" ).jqGrid( "getGridParam" , "selarrrow" ); //可以多選時,返回選中行的ID |
2. getRowData
這個方法用來獲得某行的數據。它具有一個rowid參數,Jqgrid會根據這個rowid返回對應行的數據,返回的是name:value類型的數組。如果rowid未能被找到,則返回一個空數組;如果未設置rowid參數,則以數組的形式返回Grid的所有行數據。例如:
1
2
3
|
var getRowdata = function () { var selectedId = $( "#gridTable" ).jqGrid( "getGridParam" , "selrow" ); var rowData = $( "#gridTable" ).jqGrid( "getRowData" , selectedId); |
3. addRowData
這個方法用於向Grid中插入新的一行。執行成功返回true,否則返回false。它具有4個參數:
- rowid:新行的id號;
- data:新行的數據對象,形式爲{name1:value1,name2: value2…},其中name爲colModel中定義的列名稱name;
- position:插入的位置(first:表格頂端;last:表格底端;before:srcrowid之前;after:srcrowid之後);
- srcrowid:新行將插入到srcrowid指定行的前面或後面。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
var addStudent=
function ()
{ var selectedId
= $( "#gridTable" ).jqGrid( "getGridParam" ,
"selrow" ); var dataRow
= { id
: 99, lastName
: "Zhang" , firstName
: "San" , telNo
: "0086-12345678" }; if (selectedId)
{ $( "#gridTable" ).jqGrid( "addRowData" ,
99, dataRow, "before" ,
selectedId); }
else { $( "#gridTable" ).jqGrid( "addRowData" ,
99, dataRow, "first" ); } }; |
- rowid:更新數據的行id;
- data:更新的數據對象,形式爲{name1:value1,name2: value2…},其中name爲colModel中定義的列名稱name;這個數據對象,不必設置完全,需要更新哪列,就設置哪列的name:value對;
- cssprop:如果cssprop爲String類型,則會使用jQuery的addClass爲行增加相應名稱的CSS類;如果爲object類型,則會使用html的css屬性,爲行添加樣式。如果只想增加css樣式而不更新數據,可以將data參數設爲false。
例如:
1
2
3
4
5
6
7
8
9
10
11
12
|
var updateStudent
= function ()
{ var selectedId
= $( "#gridTable" ).jqGrid( "getGridParam" ,
"selrow" ); var dataRow
= { lastName
: "Li" , firstName
: "Si" , }; var cssprop
= { color
: "#FF0000" }; $( "#gridTable" ).jqGrid( 'setRowData' ,
selectedId, dataRow, cssprop); }; |
5. delRowData
這個方法用於刪除某行數據。執行成功返回true,否則返回false。具有一個參數rowid,代表要刪除的行id。例如:
1
2
3
4
|
var deleteStudent
= function ()
{ var selectedId
= $( "#gridTable" ).jqGrid( "getGridParam" ,
"selrow" ); $( "#gridTable" ).jqGrid( 'delRowData' ,
selectedId); }; |
6. trigger(“reloadGrid”)
根據當前設置,重新載入Grid表格,即意味着向服務端重新發送一個新的請求。此方法只能用於已經構建好的Grid。此外,此方法不會使對colModel所做出的改變生效。應該使用gridUnload來重新載入對colModel的新設置。例如:
1
2
3
4
5
|
$( "#gridTable" ).jqGrid( "setGridParam" ,
{ datatype
: "json" , search
: true , mtype
: "post" }).trigger( "reloadGrid" ); |
7. 其他方法
除了以上介紹的的方法外,jqGrid還有其他有用的方法,例如:addJSONData、clearGridData、hideCol、resetSelection、setCaption、setGridHeight、setLabel、showCol等以及增強模塊提供的方法,例如:filterGrid、GridDestroy、GridUnload、setColProp等。這些方法的具體用法,或淺顯易懂,或不是非常常用。都可以參考官方文檔(http://www.trirand.com/jqgridwiki/doku.php?id=wiki:methods),得到具體指示