jqgrid5.0 afterClear 用法
时间: 2024-03-12 07:43:15 浏览: 63
在 jqGrid 5.0 中,afterClear 是一个用于清空搜索条件后执行的回调函数。它的用法如下:
```javascript
$(selector).jqGrid({
// ...其他配置项...
afterClear: function() {
// 在这里编写清空搜索条件后的操作
}
});
```
当用户点击 jqGrid 的“清除搜索条件”按钮时,afterClear 函数会被执行。在这个函数中,可以编写清空搜索条件后的操作。例如,可以重新加载 jqGrid 的数据,以显示所有数据。
需要注意的是,afterClear 函数只有在使用 jqGrid 内置的搜索功能时才会触发。如果开发者使用自定义的搜索功能,则需手动调用该函数。
此外,为了提高代码的可读性和可维护性,建议将 afterClear 函数单独定义在一个函数中,然后在 jqGrid 的配置中引用该函数。例如:
```javascript
function myAfterClear() {
// 在这里编写清空搜索条件后的操作
}
$(selector).jqGrid({
// ...其他配置项...
afterClear: myAfterClear
});
```
这样可以避免代码过于冗长,也方便后续的维护和修改。
相关问题
jqgrid 5.0 localReader
`localReader`是`jqGrid`插件中的一个配置项,用于配置本地数据的读取方式。在`jqGrid 5.0`版本中,`localReader`的配置项发生了一些变化,以下是`jqGrid 5.0`中`localReader`的常用配置项:
- `records`: 用于指定本地数据的总记录数。
- `total`: 用于指定总页数。
- `repeatitems`: 用于指定本地数据的格式是否是重复的。
- `root`: 用于指定本地数据的根节点。
- `id`: 用于指定本地数据的唯一标识符。
另外,`jqGrid 5.0`中还新增了一个`localData`配置项,用于指定本地数据的源数据。如果同时指定了`localData`和`url`两个配置项,则`url`优先级更高,`jqGrid`会从`url`中获取数据。
以下是一个`jqGrid 5.0`中使用`localReader`的示例:
```javascript
$("#myGrid").jqGrid({
datatype: "local",
localData: myData,
localReader: {
records: "total",
total: "pages",
repeatitems: false,
root: "rows",
id: "myId"
},
colModel: [
{ name: "myId", key: true, hidden: true },
{ name: "name", width: 200 },
{ name: "age", width: 100 },
{ name: "address", width: 300 }
],
rowNum: 10,
rowList: [10, 20, 30],
pager: "#myPager",
sortname: "myId",
viewrecords: true,
sortorder: "asc",
caption: "My First Grid"
});
```
在上面的示例中,我们使用了`localData`配置项指定了本地数据源。然后,我们在`localReader`中配置了本地数据的读取方式,其中`records`指定了总记录数的字段名为`"total"`,`total`指定了总页数的字段名为`"pages"`,`repeatitems`为`false`表示本地数据格式不是重复的,`root`指定了本地数据的根节点为`"rows"`,`id`指定了本地数据的唯一标识符为`"myId"`。最后,我们在`colModel`中为表格的每一列指定了相应的配置项。
jqgrid 5.0 afterRedraw 详细使用步骤
在jqGrid 5.0版本中,使用`afterRedraw`事件的步骤如下:
1. 首先,在jqGrid的初始化代码中添加`afterRedraw`事件的处理函数,例如:
```javascript
$("#grid").jqGrid({
...
afterRedraw: function () {
// 在这里执行自定义的操作
},
...
});
```
2. 在`afterRedraw`事件处理函数中,可以通过`this`关键字来访问当前的jqGrid实例,例如:
```javascript
$("#grid").jqGrid({
...
afterRedraw: function () {
var grid = this;
// 在这里根据需要访问grid对象的属性和方法
},
...
});
```
3. 在`afterRedraw`事件处理函数中,可以通过jqGrid提供的API来访问表格的各个部分以及数据,例如:
```javascript
$("#grid").jqGrid({
...
afterRedraw: function () {
var grid = this;
// 访问表格的表头和列信息
var colModel = grid.getGridParam("colModel");
var colNames = grid.getGridParam("colNames");
// 访问表格的数据
var data = grid.getGridParam("data");
// 访问分页信息
var pageInfo = grid.getGridParam("pageInfo");
// 访问底部汇总行信息
var footerData = grid.getGridParam("footerData");
// 在这里根据需要处理这些数据
},
...
});
```
需要注意的是,在`afterRedraw`事件中修改表格的数据或样式可能会导致无限递归调用`afterRedraw`事件,从而导致死循环。因此,在修改表格时,需要慎重考虑修改的时机和方法。
阅读全文