JQGrid: Загрузка данных в строку нижнего колонтитула

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

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

7
задан Scot H 12 May 2010 в 15:25
поделиться

1 ответ

Посмотрите на демо http://trirand.com/blog/jqgrid/jqgrid.html

и выберите на левом дереве "New in Version 3.5", а затем "Summary Footer Row".

В примере устанавливается footerrow : true, userDataOnFooter : true опция jqGrid. Затем сервер добавляет блок userdata к данным, отправляемым обратно в jqGrid. Вы можете прочитать о userdata в http://www.trirand.com/jqgridwiki/doku.php?id=wiki:retrieving_data. Если свойства шапки блока userdata соответствуют названиям столбцов jqGrid, то данные будут видны в строке колонтитула.

Если вам нужна дополнительная информация, напишите, какой тип данных вы используете в jqGrid (JSON, XML, xmlstring, jsonstring, local и так далее) и какой тип сервера вы используете (PHP, ASP.NET MVC, WCF и так далее).

ОБНОВЛЕНО: Если вы используете стандартное json отображение, ваши данные (без опции jsonReader в jqGrid) с сервера выглядят так

{ 
  total: "xxx", 
  page: "yyy", 
  records: "zzz",
  rows : [
    {id:"1", cell:["cell11", "cell12", "cell13"]},
    {id:"2", cell:["cell21", "cell22", "cell23"]},
      ...
  ]
}

То есть данные не имеют имен колонок из colModel. Если у вас есть, например, один столбец {name:'price', ...} внутри colModel и вы хотите показать общую цену в последней строке jqGid, вам следует определить footerrow: true, userDataOnFooter: true в опциях jqGrid и ваш сервер должен выдать данные вида

{ 
  total: "xxx", 
  page: "yyy", 
  records: "zzz",
  rows : [
    {id:"1", cell:["cell11", "cell12", "cell13"]},
    {id:"2", cell:["cell21", "cell22", "cell23"]},
      ...
  ],
  userdata: {price:1240.00} 
}

Если вы используете другой jsonReader, то вся статистика не изменится. Единственное, что вы можете определить, это изменить имя "userdata" на другое имя, но значение должно быть объектом с именем поля, как вы определили в colModel. Только значения этих полей будут показаны жирными в последней строке jqGrid.

17
ответ дан 6 December 2019 в 08:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: