【发布时间】:2018-01-06 06:08:48
【问题描述】:
我按照 Google 本身关于 Map API 和其他来源的文档来尝试找出问题所在,但经过几个小时的尝试仍然无法正常工作。..
谁能指导我解决它?
<div class="generatedMap"></div>
<div class="generatedMap"></div>
<script src="//maps.googleapis.com/maps/api/js?v=3&client=gme-KEYFROMGOOGLEAPI" type="text/javascript"></script>
<script type="text/javascript">
function initMap() {
/*var latlng = new google.maps.LatLng(latitude, longitude);
var mapOptions = {
zoom: 5,
center: new google.maps.LatLng(latitude, longitude)
}
map = new google.maps.Map(document.getElementById('generatedMap'), mapOptions);*/
var latitudeHF = document.getElementById("<%=HF_Latitude.ClientID %>");
var longitudeHF = document.getElementById("<%=HF_Longitude.ClientID %>");
var latitude = 0.0;
var longitude = 0.0;
if (latitudeHF)
{
latitude = latitudeHF.value;
}
if (longitudeHF) {
longitude = longitudeHF.value;
}
var map = new google.maps.Map(document.getElementById('generatedMap'), {
zoom: 8,
center: new google.maps.LatLng(latitude, longitude),
mapTypeId: google.maps.MapTypeId.SATELLITE
});
var marker = new google.maps.Marker({
position: new google.maps.LatLng(latitude, longitude),
map: map,
title: "<div style = 'height:60px;width:150px'><b>Consumer's location:</b><br />Latitude: " + latitude + "<br />Longitude: " + longitude
});
}
google.maps.event.addDomListener(window, 'load', initMap);
</script>
我实际上是从我的数据库中检索保存的纬度和经度,然后将其存储到一个 HiddenField 中并从那里检索它..
foreach (DataRow r in ds.Tables[0].Rows)
{
accountDB = r["AccountStatus"].ToString();
latitudeDB = Convert.ToDouble(r["Latitude"]);
longitudeDB = Convert.ToDouble(r["Longitude"]);
usernameDB = r["Username"].ToString();
ipDB = r["IPAddressOfCreation"].ToString();
}
HF_Latitude.Value = latitudeDB.ToString();
HF_Longitude.Value = longitudeDB.ToString();
出于说明目的,我删除了 Google Map API 密钥。
我得到了如图所示的纬度和经度,但我似乎无法显示地图..
感谢任何帮助!
【问题讨论】:
-
根据您的代码,您正在使用创建一个类,然后您像 Id 一样在 javascript 代码中检索。因此,由于这个原因地图未显示,请检查我的答案。
标签: javascript asp.net google-maps google-maps-api-3