Javascript Maplacejs在更新时复制控件

Javascript Maplacejs在更新时复制控件,javascript,jquery,ajax,google-maps,google-maps-api-3,Javascript,Jquery,Ajax,Google Maps,Google Maps Api 3,我正在使用一个名为Maplacejs()的jQuery插件,以使谷歌地图的操作对我来说更容易(我对这个主题是新手) 我首先创建一个变量来设置(初始化)Maplace: 然后,我创建了一个函数,在下拉菜单中选择某个日期时,使用ajax加载Maplace中的位置: function loadMap() { $.ajax({ url: 'includes/ajax_getmap.php', type: 'POST', cache: false,

我正在使用一个名为Maplacejs()的jQuery插件,以使谷歌地图的操作对我来说更容易(我对这个主题是新手)

我首先创建一个变量来设置(初始化)Maplace:

然后,我创建了一个函数,在下拉菜单中选择某个日期时,使用ajax加载Maplace中的位置:

function loadMap() {
    $.ajax({
        url: 'includes/ajax_getmap.php',
        type: 'POST',
        cache: false,
        timeout: 5000,
        data: { date: $('#dateselect').val() },
        dataType: 'json',
        success: function(data) {
            maplace.SetLocations(data.locations, true);
        },
        error: function(XMLHttpRequest, textStatus, errorThrown)  {
            alert(errorThrown)
        }
    });
}
以下是使用ajax加载的位置数组的示例:

{"locations":[
    {"lat":52.1,"lon":11.3,"title":"Title 1","html":"<h3>Content 1</h3>","zoom":8},
    {"lat":51.2,"lon":22.2,"title":"Title 2","html":"<h3>Content 2</h3>","zoom":8},
    {"lat":49.4,"lon":35.9,"title":"Title 3","html":"<h3>Content 3</h3>","zoom":8},
    {"lat":47.8,"lon":15.6,"title":"Title 4","html":"<h3>Content D2</h3>","zoom":8}
]}
问题是:每次调用此函数时,控件都会在映射中重复。下面是我调用函数3次后的示例图像:

我已经尝试在ajax“suces”事件中创建maplace变量,甚至将变量设置为“null”或“undefined”,但没有成功:(


请问,您能帮助我吗?

对于有相同问题的人来说,这是一个问题,已由最新版本0.2.8(2017年3月)修复。下载最新版本。

请共享您的全部代码。我看不到您的select change事件的处理程序,也看不到Maplace的实例化位置。此外,您可以尝试在上交叉发布您的问题,以达到更广泛的目的audience@amenadiel,我更新了问题,谢谢!Maplace被实例化为一个名为“Maplace”的变量对不起,我不懂西班牙语……哦,我看了《莫斯特拉尔·托多斯》,马上下结论说这是葡萄牙语:)
{"locations":[
    {"lat":52.1,"lon":11.3,"title":"Title 1","html":"<h3>Content 1</h3>","zoom":8},
    {"lat":51.2,"lon":22.2,"title":"Title 2","html":"<h3>Content 2</h3>","zoom":8},
    {"lat":49.4,"lon":35.9,"title":"Title 3","html":"<h3>Content 3</h3>","zoom":8},
    {"lat":47.8,"lon":15.6,"title":"Title 4","html":"<h3>Content D2</h3>","zoom":8}
]}
    $('#dateselect').selectmenu({
        style: 'dropdown',
        change: function(event, data) {
            loadMap();
        }
    });