В JavaScript/jQuery, как получить данные с пробелами в имени?
Я получаю JSON с помощью вызова jQuery getJSON.
Моя проблема в том, что некоторые из полей в возвращаемом JSON имеют в них пробелы.
Как получить эти значения из JSON без изменения исходных данных? См. Строку с надписью "ОШИБКА" ниже:
$.getJSON(url, null, function(objData) {
$.each(objData.data, function(i, item) {
var zip = item.Zip;
var fname = item.First Name; //ERROR
});
});
Пример JSON:
jsonp123456789({"data":[{"Zip":"12345","First Name":"Bob"},{"Zip":"23456","First Name":"Joe"},{"Zip":"34567","First Name":"Bill"}]})
Спасибо
Ответы
Ответ 1
Атрибуты доступа к членам массива также работают с объектами.
$.getJSON(url, null, function(objData) {
$.each(objData.data, function(i, item) {
var zip = item.Zip;
var fname = item['First Name'];
});
});
Вы можете использовать это для произвольных строк (тех, которые не являются юридическими идентификаторами), а также переменных.
var fieldName = "First Name";
var fname = item[fieldName];
Ответ 2
$.getJSON(url, null, function(objData) {
$.each(objData.data, function(i, item) {
var zip = item.Zip;
var fname = item["First Name"]; //Changed this
});
});
ссылается на элемент, используя в качестве ключа вместо точечной нотации