Javascript 传单控件搜索动态添加的标记
我正在使用传单控制搜索来搜索标记。标记存储在这样的数组中Javascript 传单控件搜索动态添加的标记,javascript,search,openstreetmap,leaflet,Javascript,Search,Openstreetmap,Leaflet,我正在使用传单控制搜索来搜索标记。标记存储在这样的数组中 var mymarkers = [{"loc": [lat,lng], "name": "a"},{"loc": [lat,lng], "name": "b"}]; var searchControl = new L.Control.Search({layer: markersLayer, propertyName: "name", circleLocation:true}); 我在这个数组中循环,将其放入一个名为markersLay
var mymarkers = [{"loc": [lat,lng], "name": "a"},{"loc": [lat,lng], "name": "b"}];
var searchControl = new L.Control.Search({layer: markersLayer, propertyName: "name", circleLocation:true});
我在这个数组中循环,将其放入一个名为markersLayer的层组中。
因为在传单控件搜索中只能搜索一个图层组,所以我在markersLayer中动态添加/删除标记
正在像这样初始化搜索控件
var mymarkers = [{"loc": [lat,lng], "name": "a"},{"loc": [lat,lng], "name": "b"}];
var searchControl = new L.Control.Search({layer: markersLayer, propertyName: "name", circleLocation:true});
当我在markersLayer中添加标记并搜索标记时,它会通过环绕标记来显示该标记。当我移除标记并将其放回MarkerLayer传单控制搜索时,搜索标记时不再圈出标记
然后我想也许我可以在找到的标记上打开一个弹出窗口。有一个名为“搜索位置发现”的事件。所以我试着:
searchControl.on('search_locationfound', function(e) {
e.marker.openPopup();
});
但什么也没发生。希望有人能帮助我 nvm,我用e.layer作为它的LayerEvent。。而且e.marker不存在,