У меня есть проблема, чтобы получать данные об архиве JSON, когда я пробую получать данные об этом архиве, я получаю в результате: [object], [object]
{
"categories": [
{
"categori_id": 1,
"name": "drinks"
},
{
"categori_id": 2,
"name": "lunch"
},
{
"categori_id": 3,
"name": "food"
},
{
"categori_id": 4,
"name": "sea"
}
],
"products": [
{
"id": 1,
"name": "Lorem",
"price": "60.000",
"available": true,
"best_seller": true,
"categories": [
1,
4
],
"img": "",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas eu."
},
{
"id": 2,
"name": "ipsum",
"price": "20.000",
"available": false,
"best_seller": false,
"categories": [
4
],
"img": "",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas eu."
},
{
"id": 3,
"name": "dolor",
"price": "10.000",
"available": true,
"best_seller": true,
"categories": [
4
],
"img": "",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas eu."
},
{
"id": 4,
"name": "sit",
"price": "35.000",
"available": false,
"best_seller": false,
"categories": [
1,
2
],
"img": "",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas eu."
},
{
"id": 5,
"name": "amet",
"price": "12.000",
"available": true,
"best_seller": true,
"categories": [
1,
4
],
"img": "http://lorempixel.com/200/100/food/",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas eu."
},
{
"id": 6,
"name": "consectetur",
"price": "120.000",
"available": true,
"best_seller": false,
"categories": [
1,
4
],
"img": "",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas eu."
},
{
"id": 7,
"name": "adipiscing",
"price": "50.000",
"available": false,
"best_seller": false,
"categories": [
1,
3
],
"img": "",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas eu."
},
{
"id": 8,
"name": "elit",
"price": "2000",
"available": true,
"best_seller": false,
"categories": [
1,
3
],
"img": "",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas eu."
},
{
"id": 9,
"name": "Maecenas",
"price": "150.000",
"available": true,
"best_seller": true,
"categories": [
2,
4
],
"img": "",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas eu."
},
{
"id": 10,
"name": "eu",
"price": "200.000",
"available": false,
"best_seller": true,
"categories": [
2,
3
],
"img": "",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas eu."
}
]
}
Кодекс JavaScript:
$(document).ready(function(){
$.ajax({
url: "category.json", // path to file
dataType: 'json', // type of file (text, json, xml, etc)
success: function(data) {
/$.each(data, function(i, item) {
console.log(item);
});/
jQuery.each( data, function( i, val ) {
$( "body" ).append( document.createTextNode( " - " + val ) );
});
},
error: function() {
alert("error");
}
});
});
Пожалуйста мне хотелось бы знать, что Вы происходите.
Если я плохо не вижу код, я думаю, что ты был бы должен вновь пробегать то, что приходит к тебе внутри первого for each.
$.ajax({
url: "category.json", // path to file
dataType: 'json', // type of file (text, json, xml, etc)
success: function(data) {
$.each(data, function(i, item) {
console.log(item);
jQuery.each( item, function( i, val ) {
$( "body" ).append( document.createTextNode( " - " + val ) );
});
});
},
error: function() {
alert("error");
}
});
});
Чтобы печатать признак в специфическом средстве, ты должен заявлять, каков этот признак в функции each (), так как они относятся друг к другу о договоренностях, и потом пробегать эту договоренность внутри другого each () следующей формы:
$.each(data.products, function() {
$.each(this, function(key, value) {
console.log(key + " - " + value)
})
})
Я надеюсь, что он подает тебя!
Подтверди, что твой сервер посылает данные в формате application/json
вместо text/plain
. Твоя функция jquery
жди данные в формате json, поместив:
dataType: 'json'
С другой стороны, это [object][object]
это форма, в которой последовательно преобразовываются данные, которых ты получаешь. Если ты хочешь увидеть их в форме дерева, пошли их в консоль браузера с console.log(datos)
.
Я не понимаю очень хорошо того, в чем он нуждается, но у него должно быть в ясном, что Ваш JSON состоит из 2 договоренностей, следовательно 1 each не достаточно, чтобы получать все данные, которых Вы хотите.
$.each(data.categories, function(index,value){
console.log(value.categori_id + " " + value.name);
});
$.each(data.products, function(index,value){
console.log(value.id + " " + value.name + " " + value.price);
});