我在我的网站上实施了Google地图中的地图脚本。我想做的是我想用我通过AJAX从API获取的数字替换纬度和经度数字(lat
& lng
)。
包含经度数和纬度数的变量返回如下:data.mondayLat
&通过AJAX的成功功能data.mondayLong
。我尝试用00.0000000
替换默认地图设置data.mondayLat
,但这不起作用。如何让这些变量不断替换map函数中的默认数字,并在每次通过AJAX获取数据时更新地图?
<script>
function initMap() {
/* The following variable data I want to replace with the AJAX responde numbers */
var myLatLng = {lat: 00.0000000, lng: 00.0000000};
var map = new google.maps.Map(document.getElementById('googleMap'), {
zoom: 13,
center: myLatLng
});
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
title: 'Today we are here'
});
}
google.maps.event.addDomListener(window, 'load', initMap);
</script>
<div id="googleMap" style="width:500px;height:380px;float:lefT;margin-left:20px;border:3px solid;"></div>
答案 0 :(得分:1)
您的AJAX请求是异步的。获得结果后,调用AJAX成功函数中的retrofitService.login(new SignInRequest(email, password),
new MyCallback<SignInResponse>() {
@Override
public void onResponse(Call<SignInResponse> call, Response<SignInResponse> response) {
super(call, response);
//do more on response
}
@Override
public void onFailure(Call<SignInResponse> call, Throwable t) {
super(call, error);
/* Do more on failure. For example: give a reason why the
request failed*/
}
});
例程(initMap
和data.mondayLat
存在)。