从openlayer 3 map获取coördinates作为变量

时间:2016-04-19 13:09:19

标签: openlayers-3

对于我的项目,我想在每次点击地图时填写带有x和ycoördinates的文本框。我用这个标准代码在屏幕上显示了coördinates:

var mousePositionControl = new ol.control.MousePosition({
    className: 'custom-mouse-position',
    target: document.getElementById('location'),
    coordinateFormat: ol.coordinate.createStringXY(5),
    undefinedHTML: ' '
  });

所以我想:如果我使用mousePositionControl作为x和y坐标的变量,我会在文本框中得到它。所以我试过这个:

map.on('click', function() {
document.getElementById("coördinates").value = mousePositionControl;
});

但是我在文本框中得到的结果是:[object Object]

有人可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:-1)

我只是自己弄清楚了。我要求完整的元素和条纹并替换它,所以我得到了我得到的。

代码:

map.on('click', function() {
  var show = document.getElementById("location").innerHTML;
  var clean = show.replace('<div class="custom-mouse-position">', "");
  var clean_again = clean.replace('</div>', "");
  var split = clean_again.split(',');
});

答案 1 :(得分:-1)

map.on('click', function(evt){
    document.getElementById('coördinates').innerHTML = evt.coordinate.join(", ");
});