Назначьте локально сохраненные параметры jQgrid первому вызову на сервер
Я видел следующую реализацию Localstorage настроек и нужно это реализовать. Я наткнулся на код из строки 243-247, который
gridview: true,
page: isColState ? myColumnsState.page : 1,
search: isColState ? myColumnsState.search : false,
postData: isColState ? { filters: myColumnsState.filters } : {},
sortname: isColState ? myColumnsState.sortname : 'invdate',
sortorder: isColState ? myColumnsState.sortorder : 'desc',
rownumbers: true,
Как вы можете видеть, это хороший подход, так как он проверяет при первой загрузке, является ли isColState true, затем выбирает параметры соответственно, однако с помощью помощника Lib.Web.MVC я не могу сделать это на стороне сервера и могу помещать только целые числа и списки, как предусмотрено. Я смотрю на эту вики-страницу и сталкиваюсь с такими событиями, как LoadBeforeSend
, beforeRequest
а также beforeProcessing
что может помочь мне изменить модель столбца сетки, ее параметры поиска и сортировки, параметры подкачки и т. д., прежде чем первый запрос будет отправлен на сервер. После этого он может просто обновлять локальное хранилище и так далее. BeforeProcessing недоступен в библиотеке Lib.Web.Mvc, и я не уверен, есть ли альтернатива.
Любые идеи, чтобы решить это.
1 ответ
К сожалению, с текущей функциональностью Lib.Web.Mvc невозможно достичь желаемого. Ближайшая готовая функциональность - это оболочка вокруг функциональности конфигурации импорта / экспорта jqGrid. Пожалуйста, обратитесь к этому демонстрационному проекту для более подробной информации:
Если вы хотите, вы можете переписать код класса JqGridHelper для соответствия вашим потребностям.
Если вы считаете, что это будет ценным дополнением к помощнику, опишите, пожалуйста, как бы вы увидели эту функцию, и напишите мне здесь, я буду рад поработать над ней.