Искать в jqGrid

Я начинаю в jqGrid, я пишу этот код для сборки jqGrid в ASP.NET

var grid = $('#list');
grid.jqGrid({
    url: 'jQGridHandler.ashx',
    postData: { ActionPage: 'CostTypes', Action: 'Fill' },
    ajaxGridOptions: { cache: false },
    direction: "rtl",
    datatype: 'json',
    height: 490,
    colNames: ['CostId', 'CostNo', 'CostName', 'Remark '],
    colModel: [
        { name: 'COST_ID', width: 100, sortable: true, search:true, editable: false,
            hidden: true, key: true, index: 'COST_ID' },
        { name: 'COST_NO', width: 100, sortable: true, editable: true },
        { name: 'COST_NAME', width: 350, sortable: true, editable: true },
        { name: 'REMARK', width: 300, sortable: true, editable: true }
    ],
    gridview: true,
    rowNum: 30,
    rowList: [30, 60, 90],
    pager: '#pager',
    sortname: 'COST_ID',
    viewrecords: true,
    rownumbers: true
});
grid.jqGrid('navGrid', '#pager', { add: false, edit: false, del: true, search: true },
    {},
    {},
    { url: "JQGridHandler.ashx?ActionPage=CostTypes&Action=Delete",
        reloadAfterSubmit: false },
    { multipleSearch: true});

при нажатии на иконку поиска и показывать окно поиска при вводе примера текста costNo=1 jqGrid не фильтровать я думаю, что это действие не работает, пожалуйста, помогите мне для поиска implimet в jqGrid спасибо всем

РЕДАКТИРОВАТЬ 01: когда я добавляю loadonce: true поиск работает, но если удалить эту опцию, поиск не работает, пожалуйста, помогите мне. Спасибо

1 ответ

Решение

Если вы используете loadonce: true данные будут загружены в сетку один раз. После этого datatype будет изменен на "local" и все действия, такие как перезагрузка, сортировка, поиск (фильтрация) будут осуществляться локально без связи с сервером.

Если пользователь начнет поиск, сетка будет перезагружена. Если вы используете url: 'jQGridHandler.ashx', datatype: 'json' тогда новый запрос будет отправлен на URL jQGridHandler.ashx, Некоторые дополнительные параметры информируют сервер о том, что данные должны быть отфильтрованы, _search параметр будет установлен в true, Потому что вы используете multipleSearch: true остальная информация о поисковом фильтре будет отправлена ​​в другом параметре: filters, Это строка в формате JSON. Формат описан в документации. Таким образом, сервер должен декодировать filters параметр и фильтровать данные сетки (как правило, один конструкции WHERE часть SELECT Оператор SQL на основе значения filters параметр).

В ответе вы найдете пример кода и можете скачать демонстрационный проект.

Другие вопросы по тегам