Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   SlickGrid и загрузка данных json (https://javascript.ru/forum/dom-window/27650-slickgrid-i-zagruzka-dannykh-json.html)

DmitryK1 20.04.2012 14:12

SlickGrid и загрузка данных json
 
нашёл таблицу в инете: SlickGrid

Внешне выглядит красиво и работает жутко быстро, насколько получилось протестить, однако есть проблема связать это с моими данными:

Здесь требуется вот такой массив:
var rows = [
    {
        field_1: "value1",
        field_2: "value2"
    }, {
        field_1: "value3",
        field_2: "value4"
    }
];


А мне приходит такой json:
Код:

[{"s":["hh_72","81","70"]},{"s":["hh_11","20","55"]},{"s":["hh_95","59","96"]}]
Разумеется я могу и json поменять в асп (то есть доступ есть) и перекодировать на странице после получения, однако хочется сделать какой-то конвертер который являл бы над собой надстройку над моим массивом объектов s и возвращал их ввиде объектов со свойствами - s.col1, s.col2 и т.п.
Ну или как то на асп сделать динамические объекты, которые возвращать сюда ввиде json.

В общем подскажите в каком направлении копнуть?

Маэстро 25.04.2012 11:53

Ну так Вы же сами ответили на свой вопрос!
1. При приеме данных в формате json Вам надо на клиенте сделать функцию преобразования массива
[{"s":["hh_72","81","70"]},{"s":["hh_11","20","55"]},{"s":["hh_95","59","96"]}]
в другой формат данных - в массив
var rows = [
    {
        field_1: "value1",
        field_2: "value2"
    }, {
        field_1: "value3",
        field_2: "value4"
    }
];

2. Если есть возможность изменить отдачу сервером, то сразу там и измените отдачу с json на то, что требует SlickGrid.

Или я не понял вопроса?

DmitryK1 22.06.2012 05:25

Проморгал ответ сразу.
Вот так и сделал - перекодировку на клиенте. Достаточно быстро в итоге работает с довольно большими объёмами данных, хотя, конечно, хотелось бы избавиться от дополнительного звена.

С другой стороны данный формат сильно уменьшает количество передаваемых символов. В общем решил так пока оставить.


Часовой пояс GMT +3, время: 04:05.