OpenLayer 3.5 从点获取特征 ID
openlayer 3.5 get feature id from point
我还在学习开放层,我遇到了一个问题。如果单击此点,我需要为我的脚本提供一个点的 id。有了这个id(该函数作为变量),我想做一些编码。
在一些例子的帮助下,我设法在我的网站上得到了一张桌子。我使用以下代码(javascript)执行此操作:
map.on('singleclick', function(evt) {
document.getElementById('nodelist').innerHTML = "Loading... please wait...";
var view = map.getView();
var viewResolution = view.getResolution();
var source = untiled.get('visible') ? untiled.getSource() : tiled.getSource();
var url = source.getGetFeatureInfoUrl(
evt.coordinate, viewResolution, view.getProjection(),
{'INFO_FORMAT': 'text/html', 'FEATURE_COUNT': 50});
if (url) {
document.getElementById('nodelist').innerHTML = '<iframe seamless src="' + url + '"></iframe>';
}
});
但我想要的不是显示表并从表中获取点的 id。
有人可以给我一些提示吗?
如果要访问功能 ID,则不能在 GetFeatureInfo 请求中使用"text/html"格式。相反,您必须使用"application/vnd.ogc.gml"或"application/json"格式。仅当服务器允许 CORS 请求,或者服务器与应用程序位于同一源时,此操作才有效。然后,您必须在 AJAX 请求中使用它,而不是在 IFRAME 中使用 source.getGetFeatureInfoUrl()
中的 url。使用 ol.format.WMSGetFeatureInfo
或 ol.format.GeoJSON
解析响应,对于解析的特征,您只需使用 ol.Feature#getId()
即可获取 id。
相关文章:
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- jquery试图按名称获取按钮位置
- 如何在jQuery中获取元素的形式
- 如何在php文件中获取$.post-ajax传递的值
- 在Shopify中获取博客文章的图片
- 使用Javascript获取所选选项ID
- 在jQuery中获取表的行索引
- 使用jquery将mysql数据获取到新的表行中
- 在动态创建的元素上获取对特定选择器的引用
- 从城市名称获取惊喜
- Angular只从数组中获取所需的数据
- 无法将数据从firebase获取到我的html页面
- 从ajax请求中获取javascript对象
- 如何从画布上的某个移动事件中获取X和Y
- 是否有一个JS/jQuery函数可以获取某个类的每个元素的ID
- 如何在PHP中使用$_POST获取Select元素值
- OpenLayer 3.5 从点获取特征 ID
- 获取已在 OpenLayers 3 中单击的图层的特征属性
- OpenLayers 2-如何获取选定特征(点)的坐标
- 在OpenLayers中获取绘制特征的坐标