1

我使用 JQgrid 并将可排序选项设置为 true 并过滤工具栏。问题是当我更改列顺序时,过滤器工具栏保持原始位置。

例子:

我有 2 列:ID、名称

我改变了地方,你得到了名字,身份证。

当我按名称过滤时,e 参数具有 ID="john"

我使用 jqgrid 4.4.0。

我从 UI 中用鼠标更改列顺序。

jqgrid代码:

 grilla.jqGrid({
    datatype: function (e) {
        dataTypeGrillaEnServerConSort(grilla, actualizarDatos, e, getDatos, !primeraCarga);
    },
    rowNum: Math.max,
    colNames: ['id', 'Apellido Y Nombre', 'Mail', 'Documento', 'Edad', 'Foto'],
    colModel: [
                    { name: 'id', index: 'id', align: 'right', hidden: true },
                    { name: 'nombre', index: 'nombre', width: 60, align: 'left', sorttype: 'text' },
                    { name: 'mail', index: 'mail', width: 60, align: 'left', sorttype: 'text' },
                    { name: 'documento', index: 'documento', width: 10, align: 'left', sorttype: 'text' },
                    { name: 'edad', index: 'edad', width: 10, align: 'right', sorttype: 'number' },
                    { name: 'foto', index: 'foto', width: 30, align: 'left', sorttype: 'number', formatter: eliminarFormatter }
                ],
    sortname: 'nombre',
    sortorder: "asc",
    sortable: true,
    caption: "Personas",
    emptyrecords: "No hay ninguna persona cargada.",
    loadtext: "Cargando...",
    autowidth: false,
    height: 300,
    cellsubmit: 'clientArray',
    width: 1200,
    pager: "#pager",
    rowNum: CANTIDADDEFILASPORPAGINA,
    viewrecords: true,
    gridComplete: function () {
        //mostrar la barra de filtros
        grilla.filterToolbar();
        grilla.find("img").error(function () {
            $(this).attr('src', pathFotoNoEncontrada);
        });
    }
});
4

0 回答 0