Я получаю JSON из сервлета и превращаю responseText в объект JSON с помощью JSON.parse(). Инструменты разработчика Chrome показывают объект JSON как имеющий данные, которые я хочу, но когда я на самом деле пытаюсь получить к нему доступ, я просто получаю кучу «неопределенных».JSON Fields Undefined (Javascript)
Я не правильно интерпретирую данные?
Скриншот Chrome Инструменты разработчика:
И кратко, мой код для вывода данных:
for (var i = 0, len = jsonObj.length; i < len; ++i) {
// Setup the result...
var resultRow = document.createElement("tr");
resultsTable.appendChild(resultRow);
var result = jsonObj[i];
// Name
var coverCell = resultRow.insertCell(0);
coverCell.innerHTML = result.name;
}
jsonData, как показано на скриншоте передается в функцию вывода, как jsonObj.
Вместо 'result.name', попробуйте' результат [ '@ имя ']'. Это работает? – cdhowie
На экране разработчика показан объект, называемый 'jsonData', но вы перебираете объект под названием' jsonObj'. Это просто опечатка? – Steve
FYI, даже если вы получаете данные как JSON, после того, как вы его разобрали, вы работаете с объектами и массивами JavaScript, и на данный момент все, что вы делаете, больше не имеет отношения к JSON. Убедитесь, что вы получаете доступ к данным только после их получения, а не заранее. –