jqgrid 4.6.0版本中 formatter 处理异步方法 详细代码
时间: 2024-02-29 09:53:21 浏览: 100
异步处理代码
下面是一个更详细的示例代码,演示了如何在 jqGrid 4.6.0 版本中使用 `formatter` 处理异步方法:
```javascript
{
name: 'column_name',
formatter: function(cellvalue, options, rowObject) {
var rowid = options.rowId;
var colname = options.colModel.name;
var value = '';
var $cell = $(options.rowId + '_' + colname);
// 显示 loading 图标
$cell.html('<div class="loading"></div>');
$.ajax({
url: 'your_async_data_url',
data: {rowid: rowid},
success: function(data) {
// 处理异步数据,并更新单元格的值
value = 'your_formatted_data';
grid.setCell(rowid, colname, value);
},
error: function(jqXHR, textStatus, errorThrown) {
// 显示错误信息
$cell.html('<div class="error">' + errorThrown + '</div>');
}
});
return value;
}
}
```
在上面的代码中,我们使用了 jQuery 的 `$.ajax` 方法来获取异步数据,并在成功获取数据后,使用 `grid.setCell` 方法来更新单元格的值。需要注意的是,我们在获取异步数据之前,先在单元格中显示了一个 loading 图标,以提醒用户正在等待数据的加载。在获取数据失败时,我们也在单元格中显示了错误信息。这样就可以在使用 `formatter` 处理异步方法时,更好地处理各种情况下的数据加载和错误提示。
阅读全文