单击按钮时刷新数据Ajax

时间:2018-01-16 08:11:07

标签: javascript jquery ajax

我正试图在点击按钮时使用ajax获取/刷新数据,这是我到目前为止所尝试的:

HTML

//API URL default
var url = "/api/division/" + {{ $division->id }};

//Data for Map
var dataMap = [];

//Options For Map
var options = {
type: "map",
dataProvider: {
    map: "worldLow",
    getAreasFromMap: true,
    zoomLevel: 0.9,
    images: dataMap //Data for Map
},
};

// Run map
AmCharts.makeChart("mapdiv", options, dataMap);

的Javascript

//Run ajax request from button
$(".btn-area").click(function(e) {
var areaId = $(this).attr("data-id");
var url = "/api/division/" + {{$division->id}} + "/" + areaId;
e.preventDefault();
$.ajax({
    type: "GET",
    url: url,
    success: function(data){
        for (var i = 0; i < data.length; i++) {
        dataMap.push({
           "latitude": data[i].cor_x,
           "longitude": data[i].cor_y,
         });
        }
        console.log(dataMap); //test in console
    },
    error: function() {
        console.log("error");
    }
});
});

当我点击按钮时,ajax中的数据显示在控制台中,但地图数据仍为空

//Route SiteController.php
public function getSiteByDivision($idDiv)
{
    $sites = Site::where(['division_id' => $idDiv])->get();
    return $sites;
}
public function getSiteByDivisionArea($idDiv,$idArea)
{
    $sites = Site::where(['division_id' => $idDiv,'area_id' => $idArea])->get();
    return $sites;
}

//Route api.php
Route::get('division/{idDiv}','SiteController@getSiteByDivision');
Route::get('division/{idDiv}/{idArea}','SiteController@getSiteByDivisionArea');

使用laravel的服务器代码

User

非常感谢任何帮助。

谢谢,

0 个答案:

没有答案