Предложения по выводу JSON в виде таблицы - jQuery.tmpl?Что-то другое? - PullRequest
0 голосов
/ 07 февраля 2012

Я получил JSON с сервера. Я вставлю здесь 2 первые записи (длинные), но теоретически это могут быть 100-е годы.

{
"1": {
    "text": "First Thoughts and Feelings",
    "filters": {
        "2": {
            "text": "% Postive",
            "banners": {
                "2": {
                    "text": "Ontario",
                    "val": "46.1907"
                },
                "3": {
                    "text": "Quebec",
                    "val": "47.9016"
                },
                "1": {
                    "text": "Total Respondents",
                    "val": "52.9057"
                }
            }
        },
        "1": {
            "text": "Net Positive",
            "banners": {
                "2": {
                    "text": "Ontario",
                    "val": "51.9106"
                },
                "3": {
                    "text": "Quebec",
                    "val": "50.7760"
                },
                "1": {
                    "text": "Total Respondents",
                    "val": "47.9157"
                }
            }
        }
    }
},
"2": {
    "text": "Purchase Intent",
    "filters": {
        "2": {
            "text": "% Postive",
            "banners": {
                "2": {
                    "text": "Ontario",
                    "val": "54.5407"
                },
                "3": {
                    "text": "Quebec",
                    "val": "53.9017"
                },
                "1": {
                    "text": "Total Respondents",
                    "val": "49.7267"
                }
            }
        },
        "1": {
            "text": "Net Positive",
            "banners": {
                "2": {
                    "text": "Ontario",
                    "val": "51.7294"
                },
                "3": {
                    "text": "Quebec",
                    "val": "52.7261"
                },
                "1": {
                    "text": "Total Respondents",
                    "val": "52.9762"
                }
            }
        }
    }
}
}

Я хочу поместить эти данные в таблицу, где в основном есть столбец для вопроса (корневой текст), фильтр, а затем каждый баннер. Я бы создал тэд вот так

<thead>
    <tr>
        <th>Question</th> 
        <th>Filter</th>
        <th>Ontario</th>
        <th>Quebec</th>
        <th>Total</th>
    </tr>...

Я пытаюсь найти лучший способ заполнить эту таблицу, учитывая, что количество баннеров является динамическим, может быть 2, может быть 20.

Если есть 2 вопроса, 2 фильтра, по 3 баннера в каждом, мне нужна таблица, состоящая из 5 столбцов и 4 строк (исключая заголовки).

Row 1 -> Q1 -> filter1 -> banner1 -> banner2 -> banner3
Row 2 -> Q1 -> filter2 -> banner1 -> banner2 -> banner3
Row 3 -> Q2 -> filter1 -> banner1 -> banner2 -> banner3
Row 4 -> Q2 -> filter2 -> banner1 -> banner2 -> banner3

Полагаю, что это также идеально подходит для сортировки, но в любом столбце, хотя я знаю, что впоследствии я могу добавить такую ​​функциональность с помощью jQueury.

Ищет предложения о том, как это сделать, так как у меня возникают проблемы, когда я оборачиваюсь вокруг него.

Ответы [ 2 ]

1 голос
/ 07 февраля 2012

Одно из лучших решений, которое я использовал для быстрой и простой сортировки таблиц с возможностью поиска, - http://datatables.net/

0 голосов
/ 07 февраля 2012

У меня были отличные результаты с SlickGrid .

Некоторые основные моменты:

  • Адаптивная виртуальная прокрутка (обработка сотен тысяч строк с чрезвычайной отзывчивостью)
  • Чрезвычайно высокая скорость рендеринга
  • Поддерживает jQuery UI Themes
  • Фоновый пост-рендеринг для более богатых ячеек
  • Настраиваемый и настраиваемый
  • Полная навигация с помощью клавиатуры
  • Изменение размера / переупорядочение / отображение / скрытие столбца
  • Автоматическое изменение размера столбца и принудительная подгонка
  • Сменные форматеры и редакторы ячеек
  • Поддержка редактирования и создания новых строк.
  • Группировка, фильтрация, пользовательские агрегаторы и многое другое!
  • Расширенные автономные и многополевые редакторы с поддержкой отмены / повтора.
  • «GlobalEditorLock» для управления одновременным редактированием вслучаи, когда несколько просмотров на странице могут редактировать одни и те же данные.

И у них есть ссылка на SO вопросы .

...