Я использую небольшую карту США в HighMaps и хочу, чтобы каждый штат и его метка данных открывали новый URL-адрес при нажатии. У меня штат работает, а ярлык не работает.
это то, что я пробовал:
plotOptions: {
series: {
allowPointSelect: true,
point: {
events: {
click: function(e) {
const url = e.target.point.value;
window.open(url);
}
}
},
datalabels: {
events: {
click: function(e) {
const url = e.target.point.value;
window.open(url);
}
}
}
}
},
В вашем примере вы можете использовать:
e.point.properties.hasc
Для получения значения из точки, на которую нажали.
Код:
plotOptions: {
series: {
allowPointSelect: true,
point: {
events: {
click: function(e) {
const url = "https://www.google.com/search?q = " + e.point.properties.hasc;
window.open(url);
}
}
},
}
},
Вы можете проверить другие значения, используя этот путь:
console.info(e.point.properties);
Полный код находится в этот разветвленный jsfiddle
Используйте this.value
вместо e.target.point.value
:
plotOptions: {
series: {
point: {
events: {
click: function() {
const url = this.value;
window.open(url);
}
}
}
}
}
Спасибо @marco-aurelio-fernandez-reyes. Мне нужно вытащить URL-адрес из таблицы HTML. Я поставил www.google.com в качестве заполнителя, но у каждого штата будет свой URL-адрес.