JqG​​rid自定义搜索重新加载网格

时间:2013-01-10 17:24:28

标签: jqgrid

上午, 我正在使用jqGrid 4.4.1 - jQuery Grid。我有下一个问题。 我有一个自定义搜索按钮,它允许过滤数据与一些参数

    $('#BtnConsultar').click(function() {
        parametros.NoSolicitud = $("#TxtNoSolicitud").val();
        parametros.TipoSolicitud = $("#CbTiposSolicitud").val();
        parametros.IdUsuario = $("#TxtIdUsuario").val();
        parametros.Proveedor = $("#TxtProveedor").val();
        parametros.FechaUltModificacionDesde = $("#TxtFechaUltModificacionDesde").val();
        parametros.FechaUltModificacionHasta = $("#TxtFechaUltModificacionHasta").val();
        parametros.FechaBorradoDesde = $("#TxtFechaBorradoDesde").val();
        parametros.FechaBorradoHasta = $("#TxtFechaBorradoHasta").val();
        jQuery('grid').jqGrid('clearGridData');
        $("#GrdResultadoConsulta").jqGrid('setGridParam', { postData: { parametroJSON: JSON.stringify(parametros)} });
        $('#GrdResultadoConsulta').trigger("reloadGrid", [{ current: true}]);
        return true;
    }); 

但是如果在过滤数据之前,我有一个10行(2页)中有20行的网格,而我想过滤的数据在第二页中,网格没有显示。我认为这是一个排序问题,因为如果我按colum排序网格显示行。

任何人都有一些解决方案吗?

这是我的网格代码

$("#GrdResultadoConsulta").jqGrid({
        url: '<%= Url.Action("GridConsultaSolicitudeEliminadas")%>',
        postData: { parametroJSON: JSON.stringify(parametros) },
        datatype: 'json',
        mtype: 'GET',
        colNames: ['No.Solicitud', 'Tipo Solicitud', 'Usuario', 'Proveedor', 'Fecha Creación', 'Fecha Modificación', 'Fecha Borrado', 'Id Notificacion', 'SolicitudesEliminadasID'],
        colModel: [
                { name: 'SolicitudID', index: 'SolicitudID', width: 75, align: 'left', sortable: true, resizable: false },
                { name: 'DescTipoSolicitud', index: 'TipoSolicitud', width: 75, align: 'center', sortable: true, resizable: false },
                { name: 'Usuario', index: 'IdUsuario', width: 200, align: 'left', sortable: true, resizable: false },
                { name: 'Proveedor', index: 'NumProv', width: 200, align: 'left', sortable: true, resizable: false },
                { name: 'FechaInicio', index: 'FechaInicio', width: 75, align: 'right', sortable: true, resizable: false },
                { name: 'FechaModificacion', index: 'FechaModificacion', width: 75, align: 'right', sortable: true, resizable: false },
                { name: 'FechaBorrado', index: 'FechaBorrado', width: 75, align: 'right', sortable: true, resizable: false },
                { name: 'IdNotificacion', width: 75, align: 'right', sortable: false, resizable: false },
                { name: 'SolicitudesEliminadasID', hidden: true }
            ],
        pager: $('#GrdResultadoConsultaPager'),
        rowNum: 10,
        sortname: 'SolicitudID',
        sortorder: 'asc',
        autowidth: true,
        height: '250px',
        viewrecords: true,
        caption: 'Resultado de consulta solicitudes eliminadas',
        loadtext: "Cargando información ...",
        hidegrid: false,
        loadComplete: function() { },
        onSelectRow: function(id) { }
    }).navGrid('#GrdResultadoConsultaPager', { edit: false, add: false, search: false, del: false });

谢谢..

PD:请原谅我的英语

1 个答案:

答案 0 :(得分:0)

我发现了我的错误。

错误不在网格中,在存储过程中。

解决方案:将过滤器移至CTE指令而不是最终查询结果。

此致