1

我在这里有一个“商店定位器”设置:

http://www.brynei.com/fertdealer_map_bry.htm

lat、lng、姓名、地址、csz 和电话信息存储在 mySQL 数据库中。如果您输入邮政编码 13165,定位器将正常工作。但是,我需要限制一系列邮政编码以显示一个标记,并为一系列邮政编码(66000 到 69999)显示标记 html。这部分实际上是使用函数 searchLocations() 部分使地图居中,但我需要函数 createMarker(latlng, name, address, csz, phone) 和函数 createOption(name, distance, num) 部分的帮助。

目前,如果您使用邮政编码 67501,地图将居中,但不显示任何标记。我需要它在特定位置放置标记,并将 Company Name Inc, 123 Main St, Anywhere KS 67501, 555-555-1234 作为标记 HTML。如果在 66000 到 69999 范围内使用 zip,则该标记将是静态的。

如果这是一个更简单的解决方案,我也可以在数据库方面做一些事情。

任何帮助表示赞赏。

这些是我遇到问题的 3 个部分(功能):

function searchLocations() {
var address = document.getElementById("addressInput").value;
var mylatlng = new google.maps.LatLng(37.928552, -97.898658);
var geocoder = new google.maps.Geocoder();
   if (address >= 66000 && address <= 69999) {
       map.setCenter(mylatlng);
       map.setZoom(10);        }
       else { 
           geocoder.geocode({address: address}, function(results, status) {       
            if (status == google.maps.GeocoderStatus.OK) {
               searchLocationsNear(results[0].geometry.location);   } 
    else {
        alert(address + ' not found');
   }
 });
 }}

function createMarker(latlng, name, address, csz, phone) {
  var html = "<font face = 'arial'>" + "<b>" + name + "</b> <br/>" + address + "<br/>" + csz + "<br/>" + phone + "</font>";
  var marker = new google.maps.Marker({
    map: map,
    position: latlng
  });
  google.maps.event.addListener(marker, 'click', function() {
    infoWindow.setContent(html);
    infoWindow.open(map, marker);
  });
  markers.push(marker);
} 


function createOption(name, distance, num) {
  var option = document.createElement("option");
  option.value = num;
  option.innerHTML = name + "(" + distance.toFixed(1) + ")";
  locationSelect.appendChild(option);
}
4

0 回答 0