[转]jqGrid 属性、事件全集
本文转自:http://blog.csdn.net/rosanu_blog/article/details/8334070
以下是jqGrid 最常用的属性和事件,经过一段时间的整理,终于弄的差不多了。版权所有,转载请注明出处,向您的厚道致敬!谢谢!
- <script type="text/javascript">
- var lastsel;
- jQuery().ready(function () {
- //父Grid(主Grid)
- jQuery("#list1").jqGrid({
- url:'server.php?q=1',
- editurl:"server.php",
- datatype: "json", //数据类型 datatype: "local", datatype: "xml",
- colNames:['Actions','Inv No','Date', 'Client', 'Amount','Tax','Total','Notes'],
- colModel:[
- {name:'act',index:'act', width:75,sortable:false},
- {name:'id',index:'id', width:75},
- {name:'invdate',index:'invdate', width:90},
- {name:'name',index:'name', width:100},
- {name:'amount',index:'amount', width:80, align:"right"},
- {name:'tax',index:'tax', width:80, align:"right"},
- {name:'total',index:'total', width:80,align:"right"},
- {name:'note',index:'note', width:150, sortable:false}
- ],
- rowNum:10, //每页数据显示条数
- rowList:[10,20,30], //每页数据显示条数
- pager: jQuery('#pager1'), //Grid显示在id为pager1的div里面
- sortname: 'id', //根据ID排序
- viewrecords: true, //显示数据总记录数
- sortorder: "desc", //倒序
- hidegrid: false, //Grid是否隐藏
- autowidth: true, //自动列宽
- width: 500, //Grid 宽度
- height: 200, //行高 height: "100%",
- multiselect: true, //复选框
- recordpos: 'left', //总记录显示位置:居左
- mtype: "POST",
- pgbuttons: false,
- pgtext: false,
- pginput: false,
- multikey: "ctrlKey",
- onSortCol: function(name,index){
- //点击排序列,根据哪列排序
- alert("Column Name: "+name+" Column Index: "+index);
- },
- ondblClickRow: function(id){
- //双击行
- alert("You double click row with id: "+id);
- },
- onSelectRow: function(ids) { //单击选择行
- if(ids == null) {
- ids=0;
- if(jQuery("#list10_d").jqGrid('getGridParam','records') >0 ) {
- jQuery("#list10_d").jqGrid('setGridParam',{url:"subgrid.php?q=1&id="+ids,page:1});
- jQuery("#list10_d").jqGrid('setCaption',"Invoice Detail: "+ids) .trigger('reloadGrid');
- }
- } else {
- jQuery("#list10_d").jqGrid('setGridParam',{url:"subgrid.php?q=1&id="+ids,page:1});
- jQuery("#list10_d").jqGrid('setCaption',"Invoice Detail: "+ids) .trigger('reloadGrid');
- }
- //点击Grid,将行变为编辑状态
- if(id && id!==lastsel){
- jQuery('#rowed3').jqGrid('restoreRow',lastsel);
- jQuery('#rowed3').jqGrid('editRow',id,true); lastsel=id;
- }
- },
- gridComplete: function(){
- //在Grid的第一列(Actions)中添加按钮E、S、C,添加增、删、查、改按钮;
- var ids = jQuery("#list1").jqGrid('getDataIDs');
- for(var i=0;i < ids.length;i++){
- var cl = ids[i];
- be = "<input style='height:22px;width:20px;' type='button' value='E' onclick=\"jQuery('#list1').editRow('"+cl+"');\" />";
- se = "<input style='height:22px;width:20px;' type='button' value='S' onclick=\"jQuery('#list1').saveRow('"+cl+"');\" />";
- ce = "<input style='height:22px;width:20px;' type='button' value='C' onclick=\"jQuery('#list1').restoreRow('"+cl+"');\" />";
- jQuery("#list1").jqGrid('setRowData',ids[i],{act:be+se+ce});
- }
- },
- subGrid : true, //显示内部Grid(次Grid),单击行展开嵌套Grid
- subGridUrl: 'subgrid.php?q=2', //内部Grid URL
- subGridModel: [ { //内部Grid列
- name : ['No','Item','Qty','Unit','Line Total'],
- width : [55,200,80,80,80],
- params: ['invdate'] //嵌套Grid参数
- } ],
- subGridRowExpanded: function(subgrid_id, row_id) { //Grid内部嵌套Grid
- // we pass two parameters
- // subgrid_id is a id of the div tag created whitin a table data
- // the id of this elemenet is a combination of the "sg_" + id of the row
- // the row_id is the id of the row // If we wan to pass additinal parameters to the url we can use
- // a method getRowData(row_id) - which returns associative array in type name-value
- // here we can easy construct the flowing
- var subgrid_table_id, pager_id;
- subgrid_table_id = subgrid_id+"_t";
- pager_id = "p_"+subgrid_table_id;
- $("#"+subgrid_id).html("<table id='"+subgrid_table_id+"' class='scroll'></table><div id='"+pager_id+"' class='scroll'></div>");
- jQuery("#"+subgrid_table_id).jqGrid({
- url:"subgrid.php?q=2&id="+row_id,
- datatype: "xml",
- colNames: ['No','Item','Qty','Unit','Line Total'],
- colModel: [
- {name:"num",index:"num",width:80,key:true},
- {name:"item",index:"item",width:130},
- {name:"qty",index:"qty",width:70,align:"right"},
- {name:"unit",index:"unit",width:70,align:"right"},
- {name:"total",index:"total",width:70,align:"right",sortable:false}
- ],
- rowNum:20,
- pager: pager_id,
- sortname: 'num',
- sortorder: "asc",
- height: '100%' //自动适应行高
- });
- jQuery("#"+subgrid_table_id).jqGrid('navGrid',"#"+pager_id,{edit:false,add:false,del:false});
- },
- subGridRowColapsed: function(subgrid_id, row_id) {
- // this function is called before removing the data
- //var subgrid_table_id;
- //subgrid_table_id = subgrid_id+"_t";
- //jQuery("#"+subgrid_table_id).remove();
- },
- loadComplete: function(){ //加载完成(初始加载),回调函数
- var ret;
- alert("This function is executed immediately after\n data is loaded. We try to update data in row 13.");
- ret = jQuery("#list15").jqGrid('getRowData',"13");
- if(ret.id == "13"){
- jQuery("#list15").jqGrid('setRowData',ret.id,{note:"<font color='red'>Row 13 is updated!</font>"})
- }
- },
- caption:"Grid Example" //Grid名称
- }, {singleselect: true, lazyload: true}).navGrid('#pager1',{edit:false,add:false,del:false});
- //singleselect: true 设置jqGrid复选框为单选
- //lazyload: true 设置jqGrid不自动加载
- //jQuery("#list6").jqGrid('navGrid',"#pager6",{edit:false,add:false,del:false}); = .navGrid('#pager1',{edit:false,add:false,del:false});
- //添加查询文本框
- jQuery("#list7").jqGrid('navGrid','#pager7',{edit:false,add:false,del:false,refresh:false,searchtext:"Find"});
- //查询和刷新按钮居右
- jQuery("#list9").jqGrid('navGrid','#pager9',{add:false,del:false,edit:false,position:'right'});
- //编辑行,添加Add、Edit、Save、Cancel按钮 //<script src="rowedex3.js" type="text/javascript"> </script>
- jQuery("#43rowed3").jqGrid('inlineNav',"#p43rowed3"); //<table id="rowed3"></table> <div id="prowed3"></div>
- //子Grid
- jQuery("#list10_d").jqGrid({
- height: 100,
- url:'subgrid.php?q=1&id=0',
- datatype: "json",
- colNames:[
- 'No','Item', 'Qty', 'Unit','Line Total'
- ],
- colModel:[
- {name:'num',index:'num', width:55},
- {name:'item',index:'item', width:180},
- {name:'qty',index:'qty', width:80, align:"right"},
- {name:'unit',index:'unit', width:80, align:"right"},
- {name:'linetotal',index:'linetotal', width:80,align:"right", sortable:false, search:false}
- ],
- rowNum:5,
- rowList:[5,10,20],
- pager: '#pager10_d',
- sortname: 'item',
- viewrecords: true,
- sortorder: "asc",
- multiselect: true,
- caption:"Invoice Detail"
- }).navGrid('#pager10_d',{add:false,edit:false,del:false});
- jQuery("#a1").click( function(){
- //获取Grid中选中的行id
- var id = jQuery("#list5").jqGrid('getGridParam','selrow');
- if (id) {
- var ret = jQuery("#list5").jqGrid('getRowData',id);
- alert("id="+ret.id+" invdate="+ret.invdate+"...");
- } else {
- alert("Please select row");
- }
- });
- jQuery("#a2").click( function(){
- //删除第12行
- var su=jQuery("#list5").jqGrid('delRowData',12);
- if(su)
- alert("Succes. Write custom code to delete row from server");
- else
- alert("Allready deleted or not in list");
- });
- jQuery("#a3").click( function(){
- //修改第11行
- var su=jQuery("#list5").jqGrid('setRowData',11,{amount:"333.00",tax:"33.00",total:"366.00",note:"<img src='images/user1.gif'/>"});
- if(su)
- alert("Succes. Write custom code to update row in server");
- else
- alert("Can not update");
- });
- jQuery("#a4").click( function(){
- //添加第99行(id为99的)
- var datarow = {id:"99",invdate:"2007-09-01",name:"test3",note:"note3",amount:"400.00",tax:"30.00",total:"430.00"};
- var su=jQuery("#list5").jqGrid('addRowData',99,datarow);
- if(su)
- alert("Succes. Write custom code to add data in server");
- else
- alert("Can not update");
- });
- jQuery("#s1").click( function() {
- //设置URL
- jQuery("#list7").jqGrid('setGridParam',{url:"server.php?q=2"}).trigger("reloadGrid");
- });
- jQuery("#s2").click( function() {
- //设置排序列
- jQuery("#list7").jqGrid('setGridParam',{sortname:"amount",sortorder:"asc"}).trigger("reloadGrid");
- });
- jQuery("#s3").click( function() {
- //设置升序或倒序
- var so = jQuery("#list7").jqGrid('getGridParam','sortorder');
- so = so=="asc"?"desc":"asc";
- jQuery("#list7").jqGrid('setGridParam',{sortorder:so}).trigger("reloadGrid");
- });
- jQuery("#s4").click( function() {
- //跳转到第二页
- jQuery("#list7").jqGrid('setGridParam',{page:2}).trigger("reloadGrid");
- });
- jQuery("#s5").click( function() {
- //设置每页显示15行
- jQuery("#list7").jqGrid('setGridParam',{rowNum:15}).trigger("reloadGrid");
- });
- jQuery("#s6").click( function() {
- //设置URL和数据格式
- jQuery("#list7").jqGrid('setGridParam',{url:"server.php?q=1",datatype:"xml"}).trigger("reloadGrid");
- });
- jQuery("#s7").click( function() {
- //设置Grid的名称
- jQuery("#list7").jqGrid('setCaption',"New Caption");
- });
- jQuery("#s8").click( function() {
- //设置Grid排序字段,根据名称排序
- jQuery("#list7").jqGrid('sortGrid',"name",false);
- });
- jQuery("#m1").click( function() {
- //获取复选框被选中的id
- var s = jQuery("#list9").jqGrid('getGridParam','selarrrow');
- alert(s);
- });
- jQuery("#m1s").click( function() {
- //设置选中第13行
- jQuery("#list9").jqGrid('setSelection',"13");
- });
- jQuery("#ms1").click( function() {
- var s = jQuery("#list10_d").jqGrid('getGridParam','selarrrow');
- alert(s);
- });
- //Grid 查询
- var timeoutHnd;
- var flAuto = false;
- function doSearch(ev){
- if(!flAuto)
- return;
- // var elem = ev.target||ev.srcElement;
- if(timeoutHnd)
- clearTimeout(timeoutHnd)
- timeoutHnd = setTimeout(gridReload,500)
- }
- function gridReload(){
- var nm_mask = jQuery("#item_nm").val();
- var cd_mask = jQuery("#search_cd").val();
- jQuery("#bigset").jqGrid('setGridParam',{url:"bigset.php?nm_mask="+nm_mask+"&cd_mask="+cd_mask,page:1}).trigger("reloadGrid");
- }
- function enableAutosubmit(state){
- flAuto = state;
- jQuery("#submitButton").attr("disabled",state);
- }
- jQuery("#cm1").click( function() {
- //显示选中行
- var s;
- s = jQuery("#list13").jqGrid('getGridParam','selarrrow');
- alert(s);
- });
- jQuery("#cm1s").click( function() {
- //选中编号为13的行
- jQuery("#list13").jqGrid('setSelection',"13");
- });
- jQuery("#list13").jqGrid('navGrid','#pager13',{add:false,edit:false,del:false},
- {}, // edit parameters
- {}, // add parameters
- {reloadAfterSubmit:false} //delete parameters
- );
- jQuery("#sids").click( function() {
- //获取Grid中当页的所有ID
- alert("Id's of Grid: \n"+jQuery("#list15").jqGrid('getDataIDs'));
- });
- jQuery("#hc").click( function() {
- //隐藏tax列
- jQuery("#list17").jqGrid('navGrid','hideCol',"tax");
- });
- jQuery("#sc").click( function() {
- //显示tax列
- jQuery("#list17").jqGrid('navGrid','showCol',"tax");
- });
- jQuery("#ed1").click( function() {
- //编辑第13行
- jQuery("#rowed1").jqGrid('editRow',"13");
- this.disabled = 'true';
- jQuery("#sved1,#cned1").attr("disabled",false);
- });
- jQuery("#sved1").click( function() {
- //保存第13行
- jQuery("#rowed1").jqGrid('saveRow',"13");
- jQuery("#sved1,#cned1").attr("disabled",true);
- jQuery("#ed1").attr("disabled",false);
- });
- jQuery("#cned1").click( function() {
- //取消编辑第13行
- jQuery("#rowed1").jqGrid('restoreRow',"13");
- jQuery("#sved1,#cned1").attr("disabled",true);
- jQuery("#ed1").attr("disabled",false);
- });
- })
- </script>
- //本地数组数据:datatype: "local",
- var mydata = [
- {id:"1",invdate:"2007-10-01",name:"test",note:"note",amount:"200.00",tax:"10.00",total:"210.00"},
- {id:"2",invdate:"2007-10-02",name:"test2",note:"note2",amount:"300.00",tax:"20.00",total:"320.00"},
- {id:"3",invdate:"2007-09-01",name:"test3",note:"note3",amount:"400.00",tax:"30.00",total:"430.00"},
- {id:"4",invdate:"2007-10-04",name:"test",note:"note",amount:"200.00",tax:"10.00",total:"210.00"},
- {id:"5",invdate:"2007-10-05",name:"test2",note:"note2",amount:"300.00",tax:"20.00",total:"320.00"},
- {id:"6",invdate:"2007-09-06",name:"test3",note:"note3",amount:"400.00",tax:"30.00",total:"430.00"},
- {id:"7",invdate:"2007-10-04",name:"test",note:"note",amount:"200.00",tax:"10.00",total:"210.00"},
- {id:"8",invdate:"2007-10-03",name:"test2",note:"note2",amount:"300.00",tax:"20.00",total:"320.00"},
- {id:"9",invdate:"2007-09-01",name:"test3",note:"note3",amount:"400.00",tax:"30.00",total:"430.00"}
- ];
- for(var i=0;i<=mydata.length;i++)
- jQuery("#list4").jqGrid('addRowData',i+1,mydata[i]);
<script type="text/javascript"> var lastsel; jQuery().ready(function () { //父Grid(主Grid) jQuery("#list1").jqGrid({ url:'server.php?q=1', editurl:"server.php", datatype: "json", //数据类型 datatype: "local", datatype: "xml", colNames:['Actions','Inv No','Date', 'Client', 'Amount','Tax','Total','Notes'], colModel:[ {name:'act',index:'act', width:75,sortable:false}, {name:'id',index:'id', width:75}, {name:'invdate',index:'invdate', width:90}, {name:'name',index:'name', width:100}, {name:'amount',index:'amount', width:80, align:"right"}, {name:'tax',index:'tax', width:80, align:"right"}, {name:'total',index:'total', width:80,align:"right"}, {name:'note',index:'note', width:150, sortable:false} ], rowNum:10, //每页数据显示条数 rowList:[10,20,30], //每页数据显示条数 pager: jQuery('#pager1'), //Grid显示在id为pager1的div里面 sortname: 'id', //根据ID排序 viewrecords: true, //显示数据总记录数 sortorder: "desc", //倒序 hidegrid: false, //Grid是否隐藏 autowidth: true, //自动列宽 width: 500, //Grid 宽度 height: 200, //行高 height: "100%", multiselect: true, //复选框 recordpos: 'left', //总记录显示位置:居左 mtype: "POST", pgbuttons: false, pgtext: false, pginput: false, multikey: "ctrlKey", onSortCol: function(name,index){ //点击排序列,根据哪列排序 alert("Column Name: "+name+" Column Index: "+index); }, ondblClickRow: function(id){ //双击行 alert("You double click row with id: "+id); }, onSelectRow: function(ids) { //单击选择行 if(ids == null) { ids=0; if(jQuery("#list10_d").jqGrid('getGridParam','records') >0 ) { jQuery("#list10_d").jqGrid('setGridParam',{url:"subgrid.php?q=1&id="+ids,page:1}); jQuery("#list10_d").jqGrid('setCaption',"Invoice Detail: "+ids) .trigger('reloadGrid'); } } else { jQuery("#list10_d").jqGrid('setGridParam',{url:"subgrid.php?q=1&id="+ids,page:1}); jQuery("#list10_d").jqGrid('setCaption',"Invoice Detail: "+ids) .trigger('reloadGrid'); } //点击Grid,将行变为编辑状态 if(id && id!==lastsel){ jQuery('#rowed3').jqGrid('restoreRow',lastsel); jQuery('#rowed3').jqGrid('editRow',id,true); lastsel=id; } }, gridComplete: function(){ //在Grid的第一列(Actions)中添加按钮E、S、C,添加增、删、查、改按钮; var ids = jQuery("#list1").jqGrid('getDataIDs'); for(var i=0;i < ids.length;i++){ var cl = ids[i]; be = "<input style='height:22px;width:20px;' type='button' value='E' onclick=\"jQuery('#list1').editRow('"+cl+"');\" />"; se = "<input style='height:22px;width:20px;' type='button' value='S' onclick=\"jQuery('#list1').saveRow('"+cl+"');\" />"; ce = "<input style='height:22px;width:20px;' type='button' value='C' onclick=\"jQuery('#list1').restoreRow('"+cl+"');\" />"; jQuery("#list1").jqGrid('setRowData',ids[i],{act:be+se+ce}); } }, subGrid : true, //显示内部Grid(次Grid),单击行展开嵌套Grid subGridUrl: 'subgrid.php?q=2', //内部Grid URL subGridModel: [ { //内部Grid列 name : ['No','Item','Qty','Unit','Line Total'], width : [55,200,80,80,80], params: ['invdate'] //嵌套Grid参数 } ], subGridRowExpanded: function(subgrid_id, row_id) { //Grid内部嵌套Grid // we pass two parameters // subgrid_id is a id of the div tag created whitin a table data // the id of this elemenet is a combination of the "sg_" + id of the row // the row_id is the id of the row // If we wan to pass additinal parameters to the url we can use // a method getRowData(row_id) - which returns associative array in type name-value // here we can easy construct the flowing var subgrid_table_id, pager_id; subgrid_table_id = subgrid_id+"_t"; pager_id = "p_"+subgrid_table_id; $("#"+subgrid_id).html("<table id='"+subgrid_table_id+"' class='scroll'></table><div id='"+pager_id+"' class='scroll'></div>"); jQuery("#"+subgrid_table_id).jqGrid({ url:"subgrid.php?q=2&id="+row_id, datatype: "xml", colNames: ['No','Item','Qty','Unit','Line Total'], colModel: [ {name:"num",index:"num",width:80,key:true}, {name:"item",index:"item",width:130}, {name:"qty",index:"qty",width:70,align:"right"}, {name:"unit",index:"unit",width:70,align:"right"}, {name:"total",index:"total",width:70,align:"right",sortable:false} ], rowNum:20, pager: pager_id, sortname: 'num', sortorder: "asc", height: '100%' //自动适应行高 }); jQuery("#"+subgrid_table_id).jqGrid('navGrid',"#"+pager_id,{edit:false,add:false,del:false}); }, subGridRowColapsed: function(subgrid_id, row_id) { // this function is called before removing the data //var subgrid_table_id; //subgrid_table_id = subgrid_id+"_t"; //jQuery("#"+subgrid_table_id).remove(); }, loadComplete: function(){ //加载完成(初始加载),回调函数 var ret; alert("This function is executed immediately after\n data is loaded. We try to update data in row 13."); ret = jQuery("#list15").jqGrid('getRowData',"13"); if(ret.id == "13"){ jQuery("#list15").jqGrid('setRowData',ret.id,{note:"<font color='red'>Row 13 is updated!</font>"}) } }, caption:"Grid Example" //Grid名称 }, {singleselect: true, lazyload: true}).navGrid('#pager1',{edit:false,add:false,del:false}); //singleselect: true 设置jqGrid复选框为单选 //lazyload: true 设置jqGrid不自动加载 //jQuery("#list6").jqGrid('navGrid',"#pager6",{edit:false,add:false,del:false}); = .navGrid('#pager1',{edit:false,add:false,del:false}); //添加查询文本框 jQuery("#list7").jqGrid('navGrid','#pager7',{edit:false,add:false,del:false,refresh:false,searchtext:"Find"}); //查询和刷新按钮居右 jQuery("#list9").jqGrid('navGrid','#pager9',{add:false,del:false,edit:false,position:'right'}); //编辑行,添加Add、Edit、Save、Cancel按钮 //<script src="rowedex3.js" type="text/javascript"> </script> jQuery("#43rowed3").jqGrid('inlineNav',"#p43rowed3"); //<table id="rowed3"></table> <div id="prowed3"></div> //子Grid jQuery("#list10_d").jqGrid({ height: 100, url:'subgrid.php?q=1&id=0', datatype: "json", colNames:[ 'No','Item', 'Qty', 'Unit','Line Total' ], colModel:[ {name:'num',index:'num', width:55}, {name:'item',index:'item', width:180}, {name:'qty',index:'qty', width:80, align:"right"}, {name:'unit',index:'unit', width:80, align:"right"}, {name:'linetotal',index:'linetotal', width:80,align:"right", sortable:false, search:false} ], rowNum:5, rowList:[5,10,20], pager: '#pager10_d', sortname: 'item', viewrecords: true, sortorder: "asc", multiselect: true, caption:"Invoice Detail" }).navGrid('#pager10_d',{add:false,edit:false,del:false}); jQuery("#a1").click( function(){ //获取Grid中选中的行id var id = jQuery("#list5").jqGrid('getGridParam','selrow'); if (id) { var ret = jQuery("#list5").jqGrid('getRowData',id); alert("id="+ret.id+" invdate="+ret.invdate+"..."); } else { alert("Please select row"); } }); jQuery("#a2").click( function(){ //删除第12行 var su=jQuery("#list5").jqGrid('delRowData',12); if(su) alert("Succes. Write custom code to delete row from server"); else alert("Allready deleted or not in list"); }); jQuery("#a3").click( function(){ //修改第11行 var su=jQuery("#list5").jqGrid('setRowData',11,{amount:"333.00",tax:"33.00",total:"366.00",note:"<img src='images/user1.gif'/>"}); if(su) alert("Succes. Write custom code to update row in server"); else alert("Can not update"); }); jQuery("#a4").click( function(){ //添加第99行(id为99的) var datarow = {id:"99",invdate:"2007-09-01",name:"test3",note:"note3",amount:"400.00",tax:"30.00",total:"430.00"}; var su=jQuery("#list5").jqGrid('addRowData',99,datarow); if(su) alert("Succes. Write custom code to add data in server"); else alert("Can not update"); }); jQuery("#s1").click( function() { //设置URL jQuery("#list7").jqGrid('setGridParam',{url:"server.php?q=2"}).trigger("reloadGrid"); }); jQuery("#s2").click( function() { //设置排序列 jQuery("#list7").jqGrid('setGridParam',{sortname:"amount",sortorder:"asc"}).trigger("reloadGrid"); }); jQuery("#s3").click( function() { //设置升序或倒序 var so = jQuery("#list7").jqGrid('getGridParam','sortorder'); so = so=="asc"?"desc":"asc"; jQuery("#list7").jqGrid('setGridParam',{sortorder:so}).trigger("reloadGrid"); }); jQuery("#s4").click( function() { //跳转到第二页 jQuery("#list7").jqGrid('setGridParam',{page:2}).trigger("reloadGrid"); }); jQuery("#s5").click( function() { //设置每页显示15行 jQuery("#list7").jqGrid('setGridParam',{rowNum:15}).trigger("reloadGrid"); }); jQuery("#s6").click( function() { //设置URL和数据格式 jQuery("#list7").jqGrid('setGridParam',{url:"server.php?q=1",datatype:"xml"}).trigger("reloadGrid"); }); jQuery("#s7").click( function() { //设置Grid的名称 jQuery("#list7").jqGrid('setCaption',"New Caption"); }); jQuery("#s8").click( function() { //设置Grid排序字段,根据名称排序 jQuery("#list7").jqGrid('sortGrid',"name",false); }); jQuery("#m1").click( function() { //获取复选框被选中的id var s = jQuery("#list9").jqGrid('getGridParam','selarrrow'); alert(s); }); jQuery("#m1s").click( function() { //设置选中第13行 jQuery("#list9").jqGrid('setSelection',"13"); }); jQuery("#ms1").click( function() { var s = jQuery("#list10_d").jqGrid('getGridParam','selarrrow'); alert(s); }); //Grid 查询 var timeoutHnd; var flAuto = false; function doSearch(ev){ if(!flAuto) return; // var elem = ev.target||ev.srcElement; if(timeoutHnd) clearTimeout(timeoutHnd) timeoutHnd = setTimeout(gridReload,500) } function gridReload(){ var nm_mask = jQuery("#item_nm").val(); var cd_mask = jQuery("#search_cd").val(); jQuery("#bigset").jqGrid('setGridParam',{url:"bigset.php?nm_mask="+nm_mask+"&cd_mask="+cd_mask,page:1}).trigger("reloadGrid"); } function enableAutosubmit(state){ flAuto = state; jQuery("#submitButton").attr("disabled",state); } jQuery("#cm1").click( function() { //显示选中行 var s; s = jQuery("#list13").jqGrid('getGridParam','selarrrow'); alert(s); }); jQuery("#cm1s").click( function() { //选中编号为13的行 jQuery("#list13").jqGrid('setSelection',"13"); }); jQuery("#list13").jqGrid('navGrid','#pager13',{add:false,edit:false,del:false}, {}, // edit parameters {}, // add parameters {reloadAfterSubmit:false} //delete parameters ); jQuery("#sids").click( function() { //获取Grid中当页的所有ID alert("Id's of Grid: \n"+jQuery("#list15").jqGrid('getDataIDs')); }); jQuery("#hc").click( function() { //隐藏tax列 jQuery("#list17").jqGrid('navGrid','hideCol',"tax"); }); jQuery("#sc").click( function() { //显示tax列 jQuery("#list17").jqGrid('navGrid','showCol',"tax"); }); jQuery("#ed1").click( function() { //编辑第13行 jQuery("#rowed1").jqGrid('editRow',"13"); this.disabled = 'true'; jQuery("#sved1,#cned1").attr("disabled",false); }); jQuery("#sved1").click( function() { //保存第13行 jQuery("#rowed1").jqGrid('saveRow',"13"); jQuery("#sved1,#cned1").attr("disabled",true); jQuery("#ed1").attr("disabled",false); }); jQuery("#cned1").click( function() { //取消编辑第13行 jQuery("#rowed1").jqGrid('restoreRow',"13"); jQuery("#sved1,#cned1").attr("disabled",true); jQuery("#ed1").attr("disabled",false); }); }) </script> //本地数组数据:datatype: "local", var mydata = [ {id:"1",invdate:"2007-10-01",name:"test",note:"note",amount:"200.00",tax:"10.00",total:"210.00"}, {id:"2",invdate:"2007-10-02",name:"test2",note:"note2",amount:"300.00",tax:"20.00",total:"320.00"}, {id:"3",invdate:"2007-09-01",name:"test3",note:"note3",amount:"400.00",tax:"30.00",total:"430.00"}, {id:"4",invdate:"2007-10-04",name:"test",note:"note",amount:"200.00",tax:"10.00",total:"210.00"}, {id:"5",invdate:"2007-10-05",name:"test2",note:"note2",amount:"300.00",tax:"20.00",total:"320.00"}, {id:"6",invdate:"2007-09-06",name:"test3",note:"note3",amount:"400.00",tax:"30.00",total:"430.00"}, {id:"7",invdate:"2007-10-04",name:"test",note:"note",amount:"200.00",tax:"10.00",total:"210.00"}, {id:"8",invdate:"2007-10-03",name:"test2",note:"note2",amount:"300.00",tax:"20.00",total:"320.00"}, {id:"9",invdate:"2007-09-01",name:"test3",note:"note3",amount:"400.00",tax:"30.00",total:"430.00"} ]; for(var i=0;i<=mydata.length;i++) jQuery("#list4").jqGrid('addRowData',i+1,mydata[i]);
- <html>
- ...
- <table id="list1"></table>
- <div id="pager1"></div>
- ...
- <table id="list5"></table>
- <div id="pager5"></div> <br />
- <a href="#" id="a1">Get data from selected row</a>
- <br />
- <a href="#" id="a2">Delete row 2</a>
- <br />
- <a href="#" id="a3">Update amounts in row 1</a>
- <br />
- <a href="#" id="a4">Add row with id 99</a>
- ...
- <table id="list6"></table>
- <div id="pager6"></div> <br />
- <a href="javascript:void(0)" id="g1" onclick="alert(jQuery('#list6').jqGrid('getGridParam','url'));">Get url</a>
- <br />
- <a href="javascript:void(0)" id="g2" onclick="alert(jQuery('#list6').jqGrid('getGridParam','sortname'));">Get Sort Name</a>
- <br />
- <a href="javascript:void(0)" id="g3" onclick="alert(jQuery('#list6')jqGrid('getGridParam','sortorder'));">Get Sort Order</a>
- <br />
- <a href="javascript:void(0)" id="g4" onclick="alert(jQuery('#list6')jqGrid('getGridParam','selrow'));">Get Selected Row</a>
- <br />
- <a href="javascript:void(0)" id="g5" onclick="alert(jQuery('#list6')jqGrid('getGridParam','page'));">Get Current Page</a>
- <br />
- <a href="javascript:void(0)" id="g6" onclick="alert(jQuery('#list6').jqGrid('getGridParam','rowNum'));">Get Number of Rows requested</a>
- <br />
- <a href="javascript:void(0)" id="g7" onclick="alert('See Multi select rows example');">Get Selected Rows</a>
- <br />
- <a href="javascript:void(0)" id="g8" onclick="alert(jQuery('#list6').jqGrid('getGridParam','datatype'));">Get Data Type requested</a>
- <br />
- <a href="javascript:void(0)" id="g9" onclick="alert(jQuery('#list6').jqGrid('getGridParam','records'));">Get number of records in Grid</a>
- ...
- <table id="list7"></table>
- <div id="pager7"></div>
- <br />
- <a href="javascript:void(0)" id="s1">Set new url</a>
- <br />
- <a href="javascript:void(0)" id="s2">Set Sort to amount column</a>
- <br />
- <a href="javascript:void(0)" id="s3" >Set Sort new Order</a>
- <br />
- <a href="javascript:void(0)" id="s4">Set to view second Page</a>
- <br />
- <a href="javascript:void(0)" id="s5">Set new Number of Rows(15)</a>
- <br />
- <a href="javascript:void(0)" id="s6" >Set Data Type from json to xml</a>
- ...
- <table id="list9"></table>
- <div id="pager9"></div>
- <br />
- <a href="javascript:void(0)" id="m1">Get Selected id's</a>
- <a href="javascript:void(0)" id="m1s">Select(Unselect) row 13</a>
- ...
- Invoice Header
- <table id="list10"></table>
- <div id="pager10"></div>
- <br />
- Invoice Detail
- <table id="list10_d"></table>
- <div id="pager10_d"></div>
- <a href="javascript:void(0)" id="ms1">Get Selected id's</a>
- ...
- <table id="list11">
- </table> <div id="pager11"></div>
- <script src="subgrid.js" type="text/javascript"> </script>
- ...
- <div class="h">Search By:</div>
- <div>
- <input type="checkbox" id="autosearch" onclick="enableAutosubmit(this.checked)"> Enable Autosearch
- <br/>
- Code
- <br />
- <input type="text" id="search_cd" onkeydown="doSearch(arguments[0]||event)" />
- </div>
- <div> Name<br>
- <input type="text" id="item" onkeydown="doSearch(arguments[0]||event)" />
- <button onclick="gridReload()" id="submitButton" style="margin-left:30px;">Search</button>
- </div>
- <br />
- <table id="bigset"></table>
- <div id="pagerb"></div>
- <script src="bigset.js" type="text/javascript"> </script>
- ...
- <table id="list13"></table>
- <div id="pager13"></div> <br />
- <a href="javascript:void(0)" id="cm1">Get Selected id's</a>
- <a href="javascript:void(0)" id="cm1s">Select(Unselect) row 13</a>
- <script src="cmultiex.js" type="text/javascript"> </script>
- ...
- <table id="list15"></table>
- <div id="pager15"></div>
- <a href="javascript:void(0)" id="sids">Get Grid id's</a>
- <br/>
- ...
- <table id="list17"></table>
- <div id="pager17"></div>
- <a href="javascript:void(0)" id="hc">Hide column Tax</a>
- <br/>
- <a href="javascript:void(0)" id="sc">Show column Tax</a>
- ...
- <table id="rowed1"></table>
- <div id="prowed1"></div>
- <br />
- <input type="BUTTON" id="ed1" value="Edit row 13" />
- <input type="BUTTON" id="sved1" disabled='true' value="Save row 13" />
- <input type="BUTTON" id="cned1" disabled='true' value="Cancel Save" />
- <script src="rowedex1.js" type="text/javascript"> </script>
- </html>