0

查看 dev.openlayers.org/apidocs/files/OpenLayers/Layer/Vector-js.htm 后 - 不清楚如何使用以下 javascript 从下面的 geojson 示例中提取属性值:

{ "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()
           }),
        });

到目前为止,我理解它的方式是 layer 是一个包含“属性”作为特征类型属性的对象。但不确定如何访问它。

任何帮助,将不胜感激。提前致谢!

4

1 回答 1

2

图层的功能具有来自 geojson 文件的属性,而不是图层本身。您可以像这样访问它们:

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

因此,attributes特征对象的属性将具有所有属性。

于 2011-12-08T22:26:30.017 回答