Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.08.2017, 19:50
Аспирант
Отправить личное сообщение для АнонимныйПарень Посмотреть профиль Найти все сообщения от АнонимныйПарень
 
Регистрация: 17.03.2017
Сообщений: 67

ПОМОЩЬ С JSON
Есть JSON файл:
{
	"1" : {
		"name" : "ЗАМКИ ВРЕЗНЫЕ",
		"image" : "../images/products/padlocks/padlock_1.jpg",
		"href" : "../products/vreznie.php",
		"items" : {
			"1" : {
				"name" : "ЗАМОК 15-01",
				"image" : "../images/products/padlocks/padlock_1.jpg",
				"color" : "black",
				"size" : "30м",
				"cost" : "3$"
			},
			"2" : {
				"name" : "ЗАМКИ 15-02",
				"image" : "../images/products/padlocks/padlock_1.jpg",
				"color" : "black",
				"size" : "30м",
				"cost" : "3$"
			}
		}
	},
	"2" : {
		"name" : "ЗАМКИ НАВЕСНЫЕ",
		"image" : "../images/products/padlocks/padlock_2.jpg",
		"href" : "../products/padlock.php",
		"items" : {
			"1" : {
				"name" : "ЗАМОК 16-01",
				"image" : "../images/products/padlocks/padlock_1.jpg",
				"color" : "black",
				"size" : "30м",
				"cost" : "3$"
			},
			"2" : {
				"name" : "ЗАМКИ 16-02",
				"image" : "../images/products/padlocks/padlock_1.jpg",
				"color" : "black",
				"size" : "30м",
				"cost" : "3$"
			},
		}
	},
	"3" : {
		"name" : "ЗАМКИ НАКЛАДНЫЕ",
		"image" : "../images/products/padlocks/padlock_3.jpg",
		"href" : "../products/nakladnie.php",
		"items" : {
			"1" : {
				"name" : "ЗАМОК 17-01",
				"image" : "../images/products/padlocks/padlock_1.jpg",
				"color" : "black",
				"size" : "30м",
				"cost" : "3$"
			},
			"2" : {
				"name" : "ЗАМКИ 17-02",
				"image" : "../images/products/padlocks/padlock_1.jpg",
				"color" : "black",
				"size" : "30м",
				"cost" : "3$"
			},
		}
	}
}


Есть парсер этого файла:
$.getJSON("../databases/goods/padlock.json", function (data) {
var goods = data;

var out = '';

for (var key in cart) {
	out += '<div class="single_goods" style="padding-right: 0px; padding-left: 0px;">';
	out += '<b>' + goods[key].name + '</b>';
	out += '<button type="button" class="btn btn-danger delete" data-art="' + key + '" style="border-radius: 0;">X</button>';
	out += '<img src="' + goods[key].image + '">'; 
	out += '<p> Размер: ' + goods[key].size + '</p>';
	out += '<p> Цвет: ' + goods[key].color + '</p>';
	out += '<p> Кол-во: <span class="btn-group" role="group" aria-label="...">' + '<button data-art="' + key + '" class="minus many btn btn-default"> - </button>' + '<button class="many btn btn-default">'+ cart[key] + '</button>'+'<button class="plus many btn btn-default" data-art="' + key + '"> + </button>' + '</span> </p>'
	out += '<div class="btn-group" style="width: 100%;">';
	out += '<button type="button" class="btn btn-warning cost add" style="width: 100%; font-size: 1.7rem;""> Цена: ' + cart[key] * goods[key].cost +  '$</button>';
	out += '</div>';
	out += '</div>';
}
$('#my-cart').html(out);

});


Вопрос: как мне указать парсеру на массив items? Тоесть парсить items у кажого объекта?
Ответить с цитированием
  #2 (permalink)  
Старый 06.08.2017, 20:03
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от АнонимныйПарень
как мне указать парсеру на массив items?
Это не массив, это объект и парсить его не надо, метод $.getJSON() возвращает готовый объект коим у вас будет data (можно сразу с ним и работать, а var goods = data просто бесполезная операция). Обходите данный объект в цикле, получая его свойства, в том числе и items.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
собрать из json Html Валерий1996 AJAX и COMET 1 15.06.2015 08:41
Помощь в преобразовании строки json dimke931 jQuery 42 28.05.2015 14:13
Не могу распарсить JSON. gorenie jQuery 3 29.11.2013 22:26
JSON или JSONP для запросов на другой сервер? Метод GET, для длинных сообщений? Kotakota jQuery 5 23.08.2011 23:12
jQuery. Обработка ошибок и JSON. mma_mma jQuery 3 19.07.2010 12:10