通过使用“打开图层2”单击以外的其他操作来触发要素图层上的要素检索

时间:2016-11-23 23:26:06

标签: javascript openlayers

我已使用以下代码向我的Open Layers 2地图添加了一个功能图。当我单击地图上的某个点时,它会根据要素图层正确检索该地点的要素名称。

代码:

featureControl = new OpenLayers.Control.WMSGetFeatureInfo({
    url: featureLayer.url,
    title: '',
    layers: [featureLayer],
    infoFormat: 'text/xml',
    queryVisible: true
});

featureControl.events.register('getfeatureinfo', this, function (event) {
    var xml = new window.DOMParser().parseFromString(event.text, 'application/xml'),
        path = featureLayer.$featureInfoXPath,
        featureName;

    try {
        featureName = xml.evaluate(path, xml, null, XPathResult.ANY_TYPE, null).iterateNext().value;
        console.log('got the feature:', featureName)
    } catch (error) {
        console.log('error', error);
    }
});

map.addControl(featureControl);
featureControl.activate();

但是,我想在其他事件上触发对功能名称的检索,例如当我在输入字段中键入地址时。所以我正在寻找一种机制来通过“点击”以外的方式触发getfeatureinfo事件。这可能吗?如果是这样,怎么样?

0 个答案:

没有答案