Цикл статей «Документация jqGrid на русском».
Следующая статья — «События в jqGrid».
Предыдущая статья — «Datatype function в jqGrid».
В некоторых случаях нам нужно иметь пользовательские данные, которые вернул сервер, но которые не отображаются автоматически в jqGrid, которые мы используем в дальнейшей обработке или для отображения какой-нибудь дополнительной информации где‐нибудь в HTML-странице, или связанные с таблицей. Для этого используется тег userdata.
В xmlReader это объявляется так:
1 2 3 4 5 |
xmlReader: { ... userdata: "userdata", ... } |
Это описывает тег, где находятся наши пользовательские данные. Важно здесь то, что XML-тег должен иметь атрибут name для того, чтобы связывать данные.
В данных, возвращённых сервером, это описывается так:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<invoices> <request>true</request> <userdata name="totalinvoice"> 240.00 </userdata> <userdata name="tax"> 40.00</userdata> ... <result> <row> <cell>data1</cell> <cell>data2</cell> <cell>data3</cell> <cell>data4</cell> <cell>data5</cell> <cell>data6</cell> </row> ... </result> </invoices> |
Если мы используем JSON‐данные, то объявление выглядит так:
1 2 3 4 5 |
jsonReader: { ... userdata: "userdata", ... } |
и данные выглядят:
1 2 3 4 5 6 7 8 9 10 11 |
{ total: "xxx", page: "yyy", records: "zzz", userdata: {totalinvoice:240.00, tax:40.00}, rows : [ {id:"1", cell:["cell11", "cell12", "cell13"]}, {id:"2", cell:["cell21", "cell22", "cell23"]}, ... ] } |
Когда эти данные получены, информация сохраняется в userData в свойствах. Любой формат данных принимается, в этом случае мы будем иметь:
1 |
userData = {totalinvoice:240.00, tax:40.00} |
Сами данные можно получить с помощью метода getGridParam. Для этого мы должны запросить их:
1 |
jQuery("grid_id").jqGrid('getGridParam', 'userData') |
или используя старый API (не рекомендуется):
1 |
jQuery("grid_id").getGridParam('userData') |
Новые слова:
whichever [wɪˈtʃɛvə] — любой
Цикл статей «Документация jqGrid на русском».
Следующая статья — «События в jqGrid».
Предыдущая статья — «Datatype function в jqGrid».