JQGrid: привязка данных JSON к флажку MultiSelect - PullRequest
1 голос
/ 17 сентября 2011

У меня есть JQGrid, загружающий данные из WCF OperationContract с подкачкой и сортировкой, работающей нормально. Я использую "multiselect: true", чтобы я получил столбец флажок и возможность выбрать несколько строк. Я реализовал gridComplete :, onSelectAll: и onSelectRow: захватывать, когда флажки отмечены / не отмечены, и поддерживать проверенное состояние при разбивке на страницы. Я могу сохранить состояние флажка в БД с помощью другого вызова метода WCF.

Что я не могу понять, как это сделать - загрузить сохраненное состояние флажка для каждой строки вместе с другими полями, указанными в colModel:.

Есть идеи? Я понимаю, что могу сделать отдельный вызов службы WCF, чтобы получить значения, пройти через них и установить состояние вручную, но это кажется огромной тратой и чрезмерно неуклюжим.

Заранее спасибо.

1 Ответ

0 голосов
/ 17 сентября 2011

Самый простой способ, который я представляю себе сразу после прочтения вашего вопроса, - это иметь дополнительный скрытый столбец (свойство hidden: true в colModel для столбца) и флажки внутри.Вы можете загрузить состояние выбора из базы данных и заполнить скрытые флажки.Внутри loadComplete или gridComplete вы можете использовать информацию для выбора строк.

Если бы вы использовали loadComplete вместо gridComplete, вы даже можете исключить необходимость держать скрытую строку.Метод обратного вызова loadComplete имеет параметр data, который инициализируется данными, полученными из вызова ajax.Поэтому, если ваш ответ сервера содержит больше информации, поскольку jqGrid требует, чтобы данные были проигнорированы jqGrid, но вы можете просмотреть данные в loadComplete и использовать эту информацию для установки выбора строки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...