-1

この種のものは初めてです。

基本的に、返されたURL値(以下を参照)がハイパーリンクとして表示されるようにしたいだけです。「url」は、(明らかに)WebサイトのURLを含むデータベース内の列の名前です。

以前は、次のようなものを使用していました。

echo "<a href=".$row['url'].">".$row['url']."</a>";

しかし、このコンテキストでの構文はわかりません。コードの抜粋は次のとおりです。

 function createMarker(latlng, venuename, url, address, phone) {
      var html = "<b>" + venuename + 
      "</b> <br/>" + url +
      "</b> <br/>" + address + 
      "</b> <br/>" + phone;
      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);
    }

ありがとう。

4

2 に答える 2

1

phpで配列を渡して、結果ごとにこのjavascript関数を呼び出し、URLをリンクにする方法を意味しますか?もしそうなら、このようなことを試してください:

フッター、window.load関数、またはページの読み込み後にjsを提供するために選択した方法:

<script type="text/javascript">
<?php foreach($db_array AS $row): ?>
    createMarker('<?php echo $row['latlng']; ?>', '<?php echo $row['venuename']; ?>', '<?php echo $row['url']; ?>', '<?php echo $row['address']; ?>', '<?php echo $row['phone']; ?>');
<?php endforeach; ?>

function createMarker(latlng, venuename, url, address, phone) {
          var html = "<b>" + venuename + 
          "</b> <br/><a href=\"" + url + "\">" + url + "</a>" +
          "</b> <br/>" + address + 
          "</b> <br/>" + phone;
          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);
        }
</script>

これは、$ db_arrayというデータベース結果配列があり、フィールドがjs関数と同じ名前に一致することを前提としています。明らかに、これらの値を実際の値に置き換えます。

于 2012-08-31T03:06:07.207 に答える
0

それらの最初のものは単純なphpエコーリンクであり、後者はグーグルマーカーを作成するためのjavascriptです。あなたはあなたが何をしたいのかを決めたいと思うでしょう。それは単なるリンクですか?またはマーカーを作成しますか?

そして、あなたはいくつかのhtml要素がjavascriptで一致していません。

この特定の出力では、関数の前にこれを追加できます。

var url = <?php echo $row['url']; ?>

しかしもちろん、私はあなたがそれをどのようにループさせたいのか分かりません。

于 2012-08-31T02:22:45.360 に答える