Затем создайте объект Json и свяжите результаты с данными таблицы HTML. - PullRequest
0 голосов
/ 12 января 2011

Я теряю ajax get, который содержит параметр, то есть дату, добавленную в БД.

Java запрашивает в БД результаты лиц, добавленных в эту дату, и создает для меня объект JSON следующим образом:

{
  "resultdata" : { "rowsReturned" : "2", "fetchTime" : "180"}
  "row_1" : { "name" : "Larry", "sex" : "m", "age" : "26", "location" : "seattle" }
  "row_2" : { "name" : "Pedro", "sex" : "m", "age" : "22", "location" : "unknown" }
}

Затем я могу вернуть объект JSON в виде строки. Затем я хотел бы динамически построить таблицу на основе этих результатов.

Прежде всего, корректен ли объект JSON для построения таблицы?

Полученные данные говорят мне, сколько строк и времени занято в миллисекундах, а затем столько строк в этом конкретном формате.

Затем я хочу создать таблицу внутри определенного элемента div, как только эти результаты будут возвращены моему браузеру на лету без обновления страницы и т. Д.

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

Как лучше всего это делать. Я знаком с jQuery, JSON для меня совершенно новый, и мне очень интересно изучать JSON в jQuery.

Любая помощь очень ценится.

Ответы [ 2 ]

1 голос
/ 12 января 2011

вы можете использовать jsonlint для проверки вашего json. Ваш не действителен. Не хватает некоторых ',':

{
    "resultdata" : {
        "rowsReturned" : "2",
        "fetchTime" : "180" 
    }, // <--
    "row_1" : {
        "name" : "Larry",
        "sex" : "m",
        "age" : "26",
        "location" : "seattle" 
    }, // <--
    "row_2" : {
        "name" : "Pedro",
        "sex" : "m",
        "age" : "22",
        "location" : "unknown" 
    }
}

Я сделал небольшой ДЕМО одного из возможных способов прохождения json с помощью for-in-loop


for (key in json) { 

проходит через json и сохраняет каждый ключ в переменной 'key'. в вашем случае 'resultdata', 'row_1', 'row_2'.
Таким образом, для доступа к данным для каждого ключа вы пишете json [ключ], который переводится, например, в json ['row_1'].
Теперь вы делаете то же самое для объекта row_1 с помощью:

for(key1 in json[key])

key1 теперь являются ключами в объекте row_1: 'name', 'sex', ...

для доступа к данным теперь вы напишите json [key] [key1], например, json ['row_1'] ['name'].

конечно, желательно, чтобы ключи содержали значимые имена, чтобы избежать путаницы, как в моем примере:)

1 голос
/ 12 января 2011

Ваш JSON отлично подходит для построения таблицы.

Вы захотите использовать $ .getJSON () для извлечения данных JSON, так как он автоматически проанализирует JSON в объект для вас. Если вам нужны расширенные функции $ .ajax (), вы можете вызвать $ .parseJSON () для возвращаемых данных из вызова AJAX, и он проанализирует JSON в объект.

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