怎么获取鼠标点击的graphic对象啊???

3.17版本的js api,layer是featurelayer,怎么可以获取我点击的要素的属性啊,不要全部的,要当前点击的
已邀请:

许丹石

赞同来自: 吴悔

可以通过selectFeature方法,选择要素。
map.on("click", function(evt){
var query = new Query();
query.geometry = evt.mapPoint;
query.distance = 100
featureLayer.queryFeatures(query, selectInshuzu);
});
function selectInshuzu(response){
var feature;
var features = response.features;
if(features.length>0){
feature = features[0];
shuzu.push(feature.attributes[featureLayer.objectIdField]);
}
var query = new Query();
query.objectIds = shuzu;
// Use an objectIds selection query (should not need to go to the server)
featureLayer.selectFeatures(query, FeatureLayer.SELECTION_ADD, function(results){
var popTotal = 0;
for (var x = 0; x < results.length; x++) {
popTotal = popTotal + results[x].attributes["POP2000"];
}
console.log(popTotal);
});
}

swaggyP - 网络粉刷匠

赞同来自: 吴悔

featurelayer绑定到click事件,返回的数据里面就有graphic,
featurelayer.on("click", function(evt){
evt.graphic.attributes//这样就能获取到属性了。
}
)

要回复问题请先登录注册