1,jqGrid的自定义按钮事件,是在左下角导航栏产生的,html
jQuery(grid_selector).jqGrid('navGrid', "#tableId",sql
{ edit: true,add: true, del: true,view: true},json
{post
//edit按钮的一些属性url
能够增长一些上述四个方法的设置spa
beforeShowForm: function (e) {}debug
},{code
//add按钮的一些属性orm
},{...},{...}htm
//在上述四个方括号后直接调用此方法 .jqGrid('navButtonAdd',pager_selector,{ buttonicon:'icon-globe purple', caption:'history', position:'last', title:'view history', onClickButton:function(){ debugger; //得到某行id var gr = jQuery("#grid-table").jqGrid('getGridParam', 'selrow'); //得到某行数据 var grr = jQuery("#grid-table").jqGrid('getRowData',gr); if (gr != null) alert("history"+grr.name); else alert("Please Select Row"); } })
那么自定义的history按钮就能够了,触发的是查询功能
2,汇总
方法1
jQuery(grid_selector).jqGrid({ //地址 url: "/jqGrid/select.html", //发送数据 postData: {"stock": $("#stock").val(), "name": $("#lastSales").val(), "note": $("#notes").val()}, //发送方式 mtype: "get", datatype: "json", //表格高度 height: 400, //列名 colNames: [' ', 'ID', 'Last Sales', 'Name', 'Stock', 'Ship via', 'Notes','Amt'], colModel: [ {name: 'id', index: 'id', width: 60, sorttype: "int", editable: true}, {name: 'sdate', index: 'sdate', width: 90, editable: true, sorttype: "date", unformat: pickDate}} ], //汇总 footerrow : true, userDataOnFooter : true
汇总首先要显示出如图中的汇总行,他是最下放突出的一行,须要在方法1里设置两个属性
footerrow : true, userDataOnFooter : true,
而后想要显示total:和总金额1060怎么作呢
1,总金额是 后台代码经过sql本身计算的,而后放到userdate里
以图片为例
note | amt |
note1 | 100 |
note2 | 1050 |
Totals: | 1060 |
能看到,Totals 显示在note这一列里,总金额显示在amt的这一列里。
因此后台返回的json中,userdate这样设置
userdata:{amt:1060,note:"Totals"}便可