Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何单击Amcharts中的映射气泡并调用服务器请求_Javascript_Jquery_Charts_Amcharts_Amcharts4 - Fatal编程技术网

Javascript 如何单击Amcharts中的映射气泡并调用服务器请求

Javascript 如何单击Amcharts中的映射气泡并调用服务器请求,javascript,jquery,charts,amcharts,amcharts4,Javascript,Jquery,Charts,Amcharts,Amcharts4,我想点击Am图表中的气泡,通过ajax调用调用服务器,并在视图中操作一些数据,这可能吗? 我正在通过ajax调用加载地图。下面是代码。我使用eventlistener clickable对象进行了尝试,但没有成功 function StatisticsMap(item, categoryID, statusID) { languageShortName = $("#languageShortName").val(); $("[relf-map-tab]").removeClas

我想点击Am图表中的气泡,通过ajax调用调用服务器,并在视图中操作一些数据,这可能吗? 我正在通过ajax调用加载地图。下面是代码。我使用eventlistener clickable对象进行了尝试,但没有成功

 function StatisticsMap(item, categoryID, statusID) {
    languageShortName = $("#languageShortName").val();
    $("[relf-map-tab]").removeClass("active");
    var url = "/" + languageShortName + "/saudiprojects/statistics/map-data?categoryID=" + categoryID + "&statusID=" + statusID;
    dataPoints = [];
    $.ajax({ type: "GET", url: url }).done(function (data) {
        $(data).each(function (index, value) {
            dataPoints.push({
                longitude: value.Longitude,
                latitude: value.Latitude,
                type: 'circle',
                color: '#E98C3E',
                label: value.CountNo,
                labelPosition: "middle",
                labelColor: "#ffffff",
                labelFontSize: 20,
                fixedSize: false,
                labelBackgroundAlpha: 1,
                labelBackgroundColor: "#E98C3E",
                height: 50 + (value.CountNo * 10),
                width: 50 + (value.CountNo * 10),
                centered: true,
                title: value.Status
            });
        });
        var map = AmCharts.makeChart("mapdiv", {
            "type": "map",
            "theme": "light",
            "dataProvider": {
                "map": "saudiArabiaHigh",
                "images": dataPoints
            }
        });
        $(item).addClass("active");
    });
}
这是我的HTML


您可以使用地图上的侦听器捕获单击的气泡。图像本身存储在事件的mapObject属性中:

  "listeners": [{
    "event": "clickMapObject",
    "method": function(ev) {
      alert('clicked on ' + ev.mapObject.title)
    }
  }]
请注意,为了使图像可点击,您必须在
imagesSettings
中设置为
true

  "imagesSettings": {
    "selectable": true
  }
演示如下:

var数据点=[{
经度:45度,
纬度:25,
键入:“圆”,
颜色:“#E98C3E”,
标签:“1”,
标签位置:“中间”,
labelColor:#ffffff“,
labelFontSize:20,
fixedSize:false,
labelBackgroundAlpha:1,
labelBackgroundColor:#E98C3E“,
身高:60,
宽度:60,
对,,
标题:“示例”
}];
var map=AmCharts.makeChart(“mapdiv”{
“类型”:“地图”,
“主题”:“光”,
“数据提供者”:{
“地图”:“Saudiarabiahai”,
“图像”:数据点
},
“图像设置”:{
“可选”:真
},
“听众”:[{
“事件”:“clickMapObject”,
“方法”:功能(ev){
警报('单击'+ev.mapObject.title)
}
}]
});
#mapdiv{
宽度:100%;
高度:500px;
}

谢谢。。它正在工作。事实上,我没有把它设置为真。
  "imagesSettings": {
    "selectable": true
  }