jqgrid常用操作

公司有个项目前端主要是用jqGrid来做的,对于俺这新人且前端不熟的人而言,难度还是有点大,记录下本人在此次开发中所使用的属性或方法。

viewrecords:true,显示记录

rowNum:-1,设置可显示的行数当前返回最大值(例如:返回100条数据,界面可显示的数据为100,返回1000,界面可显示的数据为1000.适合用在未分页但是不可预测返回多少行的情况)

单击行之前触发的事件:beforeSelectRow

单机行时触发的事件:onSelectRow

设置多选:multiselect: true,

根据ID获取某一行数据:$("#gridList").jqGrid("getRowData", ID)

冻结列:在渲染列的时候(colModel里面)添加 Frozen:true;然后 jQuery("#gridList").jqGrid('setFrozenColumns');

重新执行url方法 传递参数(keyword):$("#gridList").jqGrid('setGridParam',{postData: { keyword: $("#txt_keyword").val() }}).trigger('reloadGrid');

从界面上移除某一行(没有修改数据库): $("#gridList").jqGrid("delRowData", id);    

获取所有选中行ID:var ids = $('#gridList').jqGrid('getGridParam', 'selarrrow');

获取所有行ID:var ids = $('#gridList').jqGrid('getDataIDs');

设置行可编辑: 

editable: true,

edittype: 'text',

editoptions: { size: 10, maxlength: 15 },
editrules: { required: true },
formoptions: { elmprefix: '(*)' }

上面是自带的行编辑

本人更喜欢这种行编辑方式:

{

name: 'Amount', 80, align: 'right',

formatter: function (value, options, rowObject)

{
value = value == null ? "0.00" : rowObject.Amount;
return "<input class="form-control "  id="" + rowObject.ID + "Amount"  onkeyup=KeyUpAmount('" + rowObject.ID + "',this.id,this) value="" + value + ""/>";
}

}

注意:提交表单的时候注意把input的value 取出来赋值给Amount,不然没法提交

格式化日期:

{

label: '销售日期', name: 'CreateDateTime', 160, align: 'left'
, formatter: "date", formatoptions: { srcformat: 'Y-m-d', newformat: 'Y-m-d' }
}

设置无数据时提示文字不显示:

unwritten: false

暂时能想到的就这么多了。。。。后续遇到再补

操作里面多个按钮,分别显示悬停文字   在格式化按钮的时候加入title属性,如:  "<i title="下载"  class="fa fa-cloud-download"></i>"

原文地址:https://www.cnblogs.com/acdpp/p/6699380.html