将我的Infowindow超链接到存储在SQL DB中的网站

时间:2013-06-13 09:01:58

标签: google-maps

我有一个具有许多不同标记的地图,但是从SQL数据库调用所有信息以建立标记位置和信息窗口信息。谁能解释如何使用数据库将网站地址超链接到特定页面?我在我的sql数据库中有一个网站字段,但它当前只是在信息窗口中显示为文本。我尝试添加类似的东西,它确实在窗口中创建了超链接但是我无法链接每个标记,因为我没有单独添加它们,我不知道如何基于SQL信息。

非常感谢任何帮助。我可以将infowindows上的超链接编辑为一个集合,因此每个都指的是一个特定的网站,我真的需要它们根据存储在SQL数据库中的网站来具体。

我是这类东西的新手,我试图帮助别人,这对我来说都是新手,这是一个将数据库属性调用到的代码示例infowindow。

再次感谢您的帮助。

  downloadUrl("phpsqlsearch_genxml.php", function(data) {
    var xml = data.responseXML;
    var markers = xml.documentElement.getElementsByTagName("marker");
    for (var i = 0; i < markers.length; i++) {
      var name = markers[i].getAttribute("name");
      var address = markers[i].getAttribute("address");
      var type = markers[i].getAttribute("type");
      var phone = markers[i].getAttribute("phone");
      var website = markers[i].getAttribute("website");
      var point = new google.maps.LatLng(
          parseFloat(markers[i].getAttribute("lat")),
          parseFloat(markers[i].getAttribute("lng")));
      var html = "<b>" + name + "</b> <br/>" + "<b>" + address + "</b> <br/>" + "<b>" + type + "</b> <br/>" + "<b>" + phone + "</b> <br/>" + "<b>" + website + "</b> <br/>";

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您的数据库中的网站格式为

www.google.com

a标签(链接)具有此格式

<a href="http://www.google.com">Visit google!</a>

请注意,您必须将其添加到href属性中,并且必须包含完整地址 (http://部分不得忽略)。

所以如果你有一个变量

website = 'www.google.com'

您必须以链接格式构建它,如下所示

name_displayed = 'My Website';

link = '<a href="http://' + website + '">' + name_displayed  + '</a>';

如果您希望显示的名称是您执行的地址

link = '<a href="http://' + website + '">' + website + '</a>';

决赛将是

var html = "<b>" + name + "</b> <br/>" + "<b>" + address + "</b> <br/>" + "<b>" + type + "</b> <br/>" + "<b>" + phone + "</b> <br/>" + "<b>" + link + "</b> <br/>";