项目中有试使用jqGrid 进行数据展示,最近需要完成一个功能 记录用户翻页前选中的数据。如:
目前的分页实现是根据条件加载当前页,前一页的数据并未进行保存,查询API发现没有直接提供处理方法。但API有提供相关处理方法,通过修改能够很容易实现此功能。
实现该功能主要依赖于API提供的三个方法。loadComplete,onSelectAll,onSelectRow
方法名 | 参数 | 功能 |
loadComplete | xhr | 当从服务器返回响应时执行,xhr:XMLHttpRequest 对象 |
onSelectAll | aRowids,status | multiselect为ture,且点击头部的checkbox时才会触发此事件。aRowids:所有选中行的id集合,为一个数组。status:boolean变量说明checkbox的选择状态,true选中false不选中。无论checkbox是否选择,aRowids始终有 值 |
onSelectRow | rowid,status | 当选择行时触发此事件。rowid:当前行id;status:选择状态,当multiselect 为true时此参数才可用 |
loadComplete 方法当服务器返回后执行此方法,返回的xhr中包含了gridModel(当前页数据集合),page对象,record对象,row,total对象。该方法用于判断当前加载数据是否包含已保存的数据,如果有就通过getRowData方法进行选择。
onSelectAll 方法是选中当前页所有数据aRowids返回的是一个集合,代表数据索引,status为状态true选中false取消选中。
时间: 2024-10-10 12:58:22