2012-04-12 6 views
0

У меня есть код, который я собрал, и я вижу, что должна быть какая-то проблема с zLat и zLng. Мне интересно, почему это происходит, когда я заменяю zLat и zLng tLat и tLng внутри цикла for, тогда я получаю один маркер, который имеет смысл. В zLat и zLng там нет маркеров. Почему это происходит?Google Maps APIv3 об обработке нескольких маркеров

P.S. Мое предупреждение для zLat и zLng создает то, что выглядит как правильный вывод, но этого не должно быть?

// // // // // // // // Ajax returns from PHP 
xmlhttp.onreadystatechange=function() { 
    if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    { 
     var obj = $.parseJSON(xmlhttp.responseText); 

     var tLat = getCookie("tLat"); 
     var tLng = getCookie("tLng"); 

     var options = { 
      zoom: 4, 
      center: new google.maps.LatLng(40.7257, -74.0047), 
      mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 

     // Creating the map 
     var map = new google.maps.Map(document.getElementById('map'), options); 

     // Adding a marker to the map 
     /*var marker = new google.maps.Marker({ 
      position: new google.maps.LatLng(tLat, tLng), 
      map: map, 
      title: 'Click me', 
      icon: 'http://gmaps-samples.googlecode.com/svn/trunk/markers/blue/blank.png' 
     });*/ 

     var marker; 

     alert(obj.length); 

     for(var i=0;i<obj.length;i++) { 

      var zLat = String(obj[i].lat); 
      var zLng = String(obj[i].lng); 

      marker = new google.maps.Marker({ 
       position: new google.maps.LatLng(zLat, zLng), 
       map: map, 
       title: 'Click me' 
      }); 

      alert(zLat+','+zLng+','+i); 
     } 


     $('#map').show(); 
    } 
} 
// // // // // // // // 
+0

Почему Вы используете 'метод String'? Попробуйте исключить этот метод из вашего кода. – andresf

ответ

0
// // // // // // // // Ajax returns from PHP 
xmlhttp.onreadystatechange=function() { 
    if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    { 
     var obj = $.parseJSON(xmlhttp.responseText); 

     var tLat = getCookie("tLat"); 
     var tLng = getCookie("tLng"); 

     var options = { 
      zoom: 4, 
      center: new google.maps.LatLng(tLat, tLng), 
      mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 

     // Creating the map 
     var map = new google.maps.Map(document.getElementById('map'), options); 



     var myLatLng = new google.maps.LatLng(parseFloat(obj[0][2]), parseFloat(obj[0][1])); 

     //var marker = new google.maps.Marker({ position: myLatLng, map: map }); 

     var marker; 

     for(var i=0;i<obj.length;i++) { 

      var myLatLng = new google.maps.LatLng(parseFloat(obj[i].lat), parseFloat(obj[i].lng)); 

      var marker = new google.maps.Marker({ position: myLatLng, map: map }); 
     } 

     $('#map').show(); 
    } 
} 
// // // // // // // // 
Смежные вопросы