Я использую карту, где пользователь может разместить на ней несколько маркеров.Дело в том, что эти маркеры не могут быть очищены без кнопки на самом деле
jq310("#resetmarkers").dxButton({
text: "Reset Markers",
onClick: function() {
// empty markers
while (markers.length > 0) {
markers.pop();
}
// refresh view
var markLayer = map.getLayerByName("Marker");
var dataS = markLayer.getDataSource();
dataS.reload();
//unselect checkbox
}
});
Но я пытаюсь убрать маркер, отменив его выбор.Это моя функция, чтобы знать, если карта уже помечена:
Here is the code with more details :
function findMatchArea() {
const areas = json_areas;
jq310.each(areas, function(area) {
if (globalData.place.identifier == areas[area].identifier) {
var mark = {
coordinates: [x, y],
attributes: {
html: globalItem,
picture: picture,
rfid: globalData.identifier,
status: status,
designation: designation,
calibration: calibration,
ref: ref_mat
}
}
var alreadyExist = false;
jq310.each(markers, function(indexM) {
if (markers[indexM].attributes['rfid'] == mark.attributes.rfid) {
alreadyExist = true;
}
});
if (alreadyExist == false) {
markers.push(mark);
}
}
});
Так что каждый раз, когда пользователь щелкает поле для отображения маркера, эта функция вызывается.И у var "mark" есть маркер - 1 атрибут ... и он сравнивает себя в первом цикле.