2011-12-07 3 views
0

После просмотра dev.openlayers.org/apidocs/files/OpenLayers/Layer/Vector-js.htm - неясно, как извлечь значение свойств из geojson Приведенный ниже пример, используя следующий JavaScript:Извлечение свойств GeoJson из объекта OpenLayers.Layer.Vector

{ "type": "FeatureCollection", 
    "features": [ 
    { "type": "Feature", 
     "geometry": 
      { "type": "MultiPoint", 
       "coordinates": [[[0,0]]] 
      }, 
     "properties": {"test" : "this"} 
     } 
    ] 
} 


layer = new OpenLayers.Layer.Vector("GML", { 
      strategies: [new OpenLayers.Strategy.Fixed()], 
      protocol: new OpenLayers.Protocol.HTTP({ 
      url: "some_url", 
      params: {...}, 
      format: new OpenLayers.Format.GeoJSON() 
      }), 
     }); 

как я понимаю до сих пор является то, что слой представляет собой объект, имеющий содержит «свойства» в качестве атрибута типа объекта. Но не знаете, как получить к нему доступ.

Любая помощь будет оценена по достоинству. Заранее спасибо!

ответ

2

Это свойства слоя, который обладает свойствами из файла geojson, а не самого слоя. Вы можете получить доступ к ним, как это:

for(var i=0; i < layer.features.length; i++){ 
    console.log(layer.features[i].attributes.test); 
} 

Таким образом, свойство attributes объекта функция будет иметь все свойства.