0
В PHP У меня есть что-то вроде этого:PHP, JS создания данных JSON
$i=1;
foreach ($result as $row){
$outp['fields'][$i]['id']=$row['id'];
$outp['fields'][$i]['x']=$row['x'];
$outp['fields'][$i]['y']=$row['y'];
$outp['fields'][$i]['type']=$row['type'];
$i++;
}
echo json_encode($outp)
И в JS:
success: function(data) {
var map = eval('(data)');
}
А вот выход JSON:
{"fields":
{"1":{"id":9521,"x":21,"y":96,"type":2},
"2":{"id":9522,"x":22,"y":96,"type":3},
"3":{"id":9523,"x":23,"y":96,"type":1},
"4":{"id":9930,"x":30,"y":100,"type":3}
}
}
Я хочу написать html-код для каждого поля (в этом случае 4 поля). Как я могу это сделать? возможно ли преобразовать карту var в массив?
Благодаря
отлично! но если я хочу написать поле внутри цикла как это $ ("# map"). append ("
"); он добавляет только 3 поля (цикл идет 50x), где может быть проблема? – dontHaveNameВы имеете в виду 50 элементов на карте ["fields"]? Кроме того, я забыл написать <= in for loop и обновил свое решение. – haitaka
да есть 50 элементов, но его написание просто 3 :( – dontHaveName