谷歌地图API-格式化的电话号码显示为未定义的列表在侧栏上
Google Maps API- Formatted phone number shows up as undefined in List on side bar
我试图在乘车侧栏上显示地点及其电话号码的列表。当我点击标记时,电话号码可以工作,但在侧栏中显示为未定义。任何帮助都是伟大的,谢谢。
$(document).ready(function(){
var map = null;
var gmarkers = [];
var service = null;
var infowindow = new google.maps.InfoWindow({size: new google.maps.Size(150,50)});
function initialize() {
var slo = new google.maps.LatLng(35.2742, -120.6631);
map = new google.maps.Map(document.getElementById('map'), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: slo,
zoom: 11
});
service = new google.maps.places.PlacesService(map);
var request = {
location: slo,
radius: 30000,
types: ['hospital']
};
infowindow = new google.maps.InfoWindow();
service.nearbySearch(request, callback);
}
function callback(results, status) {
if (status == google.maps.places.PlacesServiceStatus.OK) {
for (var i = 0; i < results.length; i++) {
createMarker(results[i]);
}
}
}
function createMarker(place) {
var placeLoc = place.geometry.location;
if (place.icon) {
var image = new google.maps.MarkerImage(
place.icon, new google.maps.Size(71, 71),
new google.maps.Point(0, 0), new google.maps.Point(17, 34),
new google.maps.Size(25, 25));
} else var image = null;
var marker = new google.maps.Marker({
map: map,
icon: image,
position: place.geometry.location
});
var request = {
reference: place.reference
};
google.maps.event.addListener(marker,'click',function(){
service.getDetails(request, function(place, status) {
if (status == google.maps.places.PlacesServiceStatus.OK) {
var contentStr = '<h5>'+place.name+'</h5><p>'+place.formatted_address;
if (!!place.formatted_phone_number) contentStr += '<br>'+place.formatted_phone_number;
if (!!place.website) contentStr += '<br><a target="_blank" href="'+place.website+'">'+place.website+'</a>';
contentStr += '<br>'+place.types+'</p>';
infowindow.setContent(contentStr);
infowindow.open(map,marker);
} else {
var contentStr = "<h5>No Result, status="+status+"</h5>";
infowindow.setContent(contentStr);
infowindow.open(map,marker);
}
});
});
gmarkers.push(marker);
var side_bar_html = "<a href='javascript:google.maps.event.trigger(gmarkers["+parseInt(gmarkers.length-1)+"],'"click'");'>"+place.name+"-"+place.formatted_phone_number+"</a><br>";
document.getElementById('side_bar').innerHTML += side_bar_html;
}
google.maps.event.addDomListener(window, 'load', initialize);
});
infoWindow中显示的格式化电话号码在placeDetails响应中返回,这在单击标记时发生,它在用于创建侧边栏的nearbySearch响应中不可用。
相关文章:
- Jplayer播放列表未定义
- 从angularjs中的下拉列表中删除未定义的值
- 调用.ajax方法得到未定义的json结果,返回json格式列表<字符串>
- 为什么来自.getJSON的名称在声明为列表(JavaScript / JQuery)的索引后仍未定义
- Vue.js 1.0.15 过滤列表无法读取未定义的属性
- a不同列列表的未定义或空引用的数据排序错误
- 当不处于编辑模式时,下拉列表中的Kendo单元格值显示为未定义
- 绑定到剑道下拉列表未定义
- 淘汰Viewmodel+selecteditem->嵌套列表”;未定义”;
- 旧版浏览器中类列表“未定义”的解决方法
- $_GET从生成的列表是未定义的显示页面
- 谷歌地图API-格式化的电话号码显示为未定义的列表在侧栏上
- 未定义Firebase快照列表
- 在语义UI搜索下拉列表中获得未定义值
- Javascript TypeError声明列表未定义
- reduce方法创建新列表,为什么未定义
- Javascript对象列表返回null或未定义,但不是
- 获取返回未定义的已单击列表项的ID
- text'未定义'尝试访问json列表时显示
- 映射未定义的 ReactJS 代码中的待办事项列表应用程序