如何在google maps infowindow中的jquery的'content'中进行echo工作

时间:2012-03-06 14:51:39

标签: php jquery

我在这里有一个新问题,我想在infowindow的内容中回复php中的变量,有什么建议吗?

这是我的代码,在infowindow内容我已经使用了一些HTML代码,我必须用php变量替换。 对于Eg:deviceid1应该替换为数据库中的值

  var trieste = new google.maps.LatLng(45.6111555,13.8022614);
  var mapOptions = {
    zoom:      12,
    center:    trieste,
    mapTypeId: google.maps.MapTypeId.ROADMAP
  }

  var map = new google.maps.Map($("#map_canvas")[0], mapOptions);

  var places =
    [
      {
        "position": [45.6466883,13.7631226]
      },
      {
        "position": [45.6433281,13.7895584]
      },
      {
        "position": [45.6017884,13.6673355] 
      },
      {
        "position": [45.622442,13.7641525] 
      }
    ]

  var currentPlace = null;
  var icons=["green.png","red.png","blue.png","yellow.png"];
  var i=0;

    $(places).each(function() {
      var place = this;
      var marker = new google.maps.Marker({
        position: new google.maps.LatLng(place.position[0], place.position[1],place.position[2],place.position[3]),
        map     : map,
        icon    : icons[i]
      });

   if(i==0)
   {
   var infowindow = new google.maps.InfoWindow({
   content: '<ul><li>Device ID1</li><li>Device configuration1</li><li>Device Description1</li></ul><a href="riacqua/activepanel.php">Goto RIACQUA</a>'
     }); 
   google.maps.event.addListener(marker, 'mouseover', function() {
   infowindow.open(map, marker);
     });
    google.maps.event.addListener(marker, 'mouseout', function() {
   infowindow.close();
     });
    }

2 个答案:

答案 0 :(得分:2)

content: '<ul><li><?=$deviceID?></li><li>Device configuration1</li><li>Device Description1</li></ul><a href="riacqua/activepanel.php">Goto RIACQUA</a>'

答案 1 :(得分:1)

你只是想做点什么吗?

var infowindow = new google.maps.InfoWindow({
   content: '<ul><li><?php echo $deviceId; ?></li><li>Device configuration1</li><li>Device Description1</li></ul><a href="riacqua/activepanel.php">Goto RIACQUA</a>'
     }); 

这应该可以解决问题,当然如果你的设备id变量包含引号/单引号,那么你可能必须将它们剥离或转义它们。

这应该对php文件没有问题,但是如果你试图让它以另一种文件类型(html,htm等)呈现,你可能需要更改其他设置。