У меня есть карта открытых слоев с точечным слоем, который при нажатии на элемент открывает всплывающее окно. Внутри всплывающего окна я показываю интерактивную ссылку, которая должна привести к URL-адресу, который хранится в таблице атрибутов слоя.
Но если я щелкну слой, откроется ссылка на путь типа "C: / Users / user /.../ URL". URL-адрес - это все, что мне нужно, но браузер также открывает путь к месту сохранения проекта.
Мой код:
map.on('click', function(event) {
var feature = map.forEachFeatureAtPixel(event.pixel, function(feature, layer) {
if (layer === knoten) {
return feature;
}
});
if (feature != null) {
var pixel = event.pixel;
var coord = map.getCoordinateFromPixel(pixel);
popup.setPosition(coord);
$(elementPopup).attr('data-content', '<b>1: </b>' + ' ' + feature.get('ERHEB_NR') +
'</br><b>2: </b>' + '   ' + '<a id="link" target="_blank" rel="noopener noreferrer">Link</a>');
$(elementPopup).popover({'placement': 'top', 'html': true});
$(elementPopup).popover('show');
document.getElementById('link').href = feature.get('KATASTER')
}
else {
$(elementPopup).popover({'html': true});
$(elementPopup).popover('hide');
}
});
Если я заменим '<a id="link" target="_blank" rel="noopener noreferrer">Link</a>'
на feature.get('KATASTER')
, появится правильная ссылка (но, поскольку она не находится внутри оператора, она не активна).