GeoJSON 파일 (아래)을 반복하여 “속성”내에 몇 가지 속성으로 배열을 채우려 고합니다. 내가 찾을 수있는 다양한 예제를 통해 계속해서 일하고 있습니다. 속성을 얻으려면 다른 $ .each ()를 포함시켜야합니까? 그것이 분명하지 않다면 나는 이것을 처음 접했고 벽에 부딪쳤다.
내가 지금까지 무엇을 :
$(document).ready(function () {
$.getJSON('testpoint.geojson', function (data) {
var items = [];
$.each(data.features, function (key, val) {
items.push('<li id="' + key + '">' + val + '</li>');
});
$('<ul/>', {
'class':'my-new-list',
html:items.join('')
}).appendTo('body');
});
});
그리고 내 json은 다음과 같습니다.
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"properties": {
"gid": 1,
"PID": "9-18-3",
"BCT": "BCT126",
"OWNER_TYPE": "A",
"LOCNO": 0,
"LOCEXT": "",
"STREET": "CROSBY LANE",
"ACQUIRED": "5/7/2010",
"GRANTOR": "John A. SPARGO",
"UPLAND": 0,
"WETLAND": 3.96,
"TOTAL": 3.96,
"HABITAT": "salt marsh"
},
"geometry": {
"type": "Point",
"coordinates": [
-70.03209,
41.78278
]
}
}
]
}
답변
거의 다 왔습니다. val.properties에 대한 다른 .each는 다음과 같이 작동합니다.
$.each(data.features, function (key, val) {
$.each(val.properties, function(i,j){
items.push('<li id="' + i + '">' + j + '</li>');
})
});
답변
위에서 작성된 내용은 각 JSON 객체의 각 요소를 반복합니다. 그것들은 JSON 객체이므로 객체 지오메트리 및 속성으로 취급하고 도트 표기법을 사용하여 단순히 참조하려고합니다.
$.each(data.features, function (key, val) {
geometry = val.geometry;
properties = val.properties;
alert (properties.place);
});