发布于

AI总结: 本文介绍了一个使用jqGrid进行服务端排序的配置示例。该示例设置了不启用一次性加载数据到客户端,默认按名称降序排序,并定义了表格的列名和列模型。通过onSortCol事件处理函数,调用search函数进行服务端排序,并阻止客户端排序操作。 优化建议: 1. 在search函数中,确保完整传递所有必要的参数,以便服务端能够处理排序请求。 2. 考虑增加错误处理机制,以应对服务端返回的异常情况。 3. 可以添加加载指示器,以改善用户体验,提示用户正在进行数据加载。 4. 使用更具描述性的变量名,以提高代码可读性和维护性。

服务端排序

$(grid_selector).jqGrid({
    loadonce: false, // 是否一次性加载数据到客户端,启用本地排序
    sortname: 'name',
    sortorder: 'desc',
    colNames: [ 'id', 'name'],
    colModel: [
    {
        index: 'id',
        name: 'id'
    },
    {
        index: 'name',
        name: 'name',
        width: 50,
        sortable: true
    },
    onSortCol: function(index, columnIndex, sortOrder) {
        search();
        return 'stop'; // 阻止客户端排序操作
    },
})

function search() {
  var param = {};
  param.sortName = $(grid_selector).getGridParam("sortname");
  param.sortOrder = $(grid_selector).getGridParam("sortorder");
  ...
}