Javascript 如何在谷歌地图和Ajax中使用分页
我有一个api,其中是分页,因为有很多数据。现在我正在尝试使用谷歌地图,我使用API从数据库中获取lat和lng。我仍然只得到API数据的第一页。我的代码怎么了?我该换什么。请帮忙。我会很高兴见到你的Javascript 如何在谷歌地图和Ajax中使用分页,javascript,google-maps,pagination,Javascript,Google Maps,Pagination,我有一个api,其中是分页,因为有很多数据。现在我正在尝试使用谷歌地图,我使用API从数据库中获取lat和lng。我仍然只得到API数据的第一页。我的代码怎么了?我该换什么。请帮忙。我会很高兴见到你的 <script> function initMap(map) { var start_point = new google.maps.LatLng(27.772321, 1.803125); // Creating a new map var map =
<script>
function initMap(map) {
var start_point = new google.maps.LatLng(27.772321, 1.803125);
// Creating a new map
var map = new google.maps.Map(document.getElementById("companies-map"), {
center: start_point,
zoom: 2,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
function setMarkerPoints(map) {
var bounds = new google.maps.LatLngBounds();
var mc = [];
var infoWindow = new google.maps.InfoWindow();
url = '/api/companies/map/',
$.ajax({
type: "GET",
url: url,
dataType: "json",
success: function(data, pagination) {
$.each(data.results, function(marker, data) {
var latLng = new google.maps.LatLng(data.point.latitude, data.point.longitude);
bounds.extend(latLng);
// Creating a marker and putting it on the map
var marker = new google.maps.Marker({
position: latLng,
animation: google.maps.Animation.DROP,
map: map,
});
google.maps.event.addListener(marker, 'click', function() {
infoWindow.setContent('<a href="' + data.title + '" class="text-primary hover-dark">' + data.name + '</a><br>' + data.name);
infoWindow.open(map, marker);
});
mc.push(marker);
});
if (pagination.hasNextPage) {
pagination.nextPage();
};
new MarkerClusterer(map, mc, {
imagePath: 'https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m'
});
},
error: function(data) {
console.log('Please refresh the page and try again');
}
});
//END MARKER DATA
// end loop through json
}
setMarkerPoints(map);
}
google.maps.event.addDomListener(window, 'load', renderGoogleMap);
renderGoogleMap();
</script>
嗨。我有一个api,其中是分页,因为有很多数据。现在我正在尝试使用谷歌地图,我使用API从数据库中获取lat和lng。我仍然只得到API数据的第一页。我的代码怎么了?我该换什么。请帮忙。我会很高兴见到你的
<script>
function initMap(map) {
var start_point = new google.maps.LatLng(27.772321, 1.803125);
// Creating a new map
var map = new google.maps.Map(document.getElementById("companies-map"), {
center: start_point,
zoom: 2,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
function setMarkerPoints(map) {
var bounds = new google.maps.LatLngBounds();
var mc = [];
var infoWindow = new google.maps.InfoWindow();
url = '/api/companies/map/',
$.ajax({
type: "GET",
url: url,
dataType: "json",
success: function(data, pagination) {
$.each(data.results, function(marker, data) {
var latLng = new google.maps.LatLng(data.point.latitude, data.point.longitude);
bounds.extend(latLng);
// Creating a marker and putting it on the map
var marker = new google.maps.Marker({
position: latLng,
animation: google.maps.Animation.DROP,
map: map,
});
google.maps.event.addListener(marker, 'click', function() {
infoWindow.setContent('<a href="' + data.title + '" class="text-primary hover-dark">' + data.name + '</a><br>' + data.name);
infoWindow.open(map, marker);
});
mc.push(marker);
});
if (pagination.hasNextPage) {
pagination.nextPage();
};
new MarkerClusterer(map, mc, {
imagePath: 'https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m'
});
},
error: function(data) {
console.log('Please refresh the page and try again');
}
});
//END MARKER DATA
// end loop through json
}
setMarkerPoints(map);
}
google.maps.event.addDomListener(window, 'load', renderGoogleMap);
renderGoogleMap();
</script>
函数initMap(map){
var start_point=new google.maps.LatLng(27.772321,1.803125);
//创建新地图
var map=new google.maps.map(document.getElementById(“公司地图”){
中心:起点,
缩放:2,
mapTypeId:google.maps.mapTypeId.ROADMAP
});
函数集合标记点(映射){
var bounds=new google.maps.LatLngBounds();
var mc=[];
var infoWindow=new google.maps.infoWindow();
url='/api/companys/map/',
$.ajax({
键入:“获取”,
url:url,
数据类型:“json”,
成功:函数(数据、分页){
$.each(数据、结果、函数(标记、数据){
var latLng=新的google.maps.latLng(data.point.lation,data.point.longitude);
边界扩展(latLng);
//创建标记并将其放在地图上
var marker=new google.maps.marker({
位置:latLng,
动画:google.maps.animation.DROP,
地图:地图,
});
google.maps.event.addListener(标记'click',函数(){
infoWindow.setContent(“
”+data.name);
信息窗口。打开(地图、标记);
});
mc.push(marker);
});
if(分页。下一页){
分页。下一页();
};
新MarkerClusterer(地图、mc、{
imagePath:'https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m'
});
},
错误:函数(数据){
log('请刷新页面并重试');
}
});
//结束标记数据
//通过json结束循环
}
设置标记点(地图);
}
google.maps.event.addDomListener(窗口'load',renderGoogleMap);
renderGoogleMap();
非常感谢您需要创建一个PlaceSearchPagination对象才能访问其他页面。该对象是通过回调函数创建的 查看访问其他结果部分,特别是在注释“//创建地点服务”和“//执行附近搜索”下