Javascript 通过使用“打开的图层2”以外的其他方式触发要素图层上要素的检索
通过使用以下代码,我已将要素地图添加到我的Open Layers 2地图中。当我单击地图上的某个点时,它会根据要素图层正确检索该位置的要素名称 代码: 但是,我也希望在其他事件上触发对功能名称的检索,例如在输入字段中键入地址时。因此,我正在寻找一种机制来触发getfeatureinfo事件,而不是通过“单击”。这可能吗?如果是,怎么做Javascript 通过使用“打开的图层2”以外的其他方式触发要素图层上要素的检索,javascript,openlayers,Javascript,Openlayers,通过使用以下代码,我已将要素地图添加到我的Open Layers 2地图中。当我单击地图上的某个点时,它会根据要素图层正确检索该位置的要素名称 代码: 但是,我也希望在其他事件上触发对功能名称的检索,例如在输入字段中键入地址时。因此,我正在寻找一种机制来触发getfeatureinfo事件,而不是通过“单击”。这可能吗?如果是,怎么做 featureControl = new OpenLayers.Control.WMSGetFeatureInfo({ url: featureLayer
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();