1

ajaxでページに地図を表示するGoogleマップスクリプトがあり、分割ページでjquery ajaxのスクリプトを使用し、次にphp分割ページのスクリプトも使用しました。

メインページにGoogleマップを表示することはありませんが、マップを含むdivにはvisibility:none css属性が含まれています。

PHPページのGoogleマップのスクリプトは次のとおりです。

`<?php
$host="host";
$username="user";
$passowrd="";
$db_name="db";


// Connect to my database and run query
mysql_connect($host,$username,$passowrd) or die("connect to database faild");

mysql_select_db($db_name) or die("ünable to connect to database");

$barcode = mysql_real_escape_string($_POST['barcode']);
// select data from tracking table
$query = "SELECT *
               FROM `table`
               WHERE `col` = '$barcode'";
$query2 = mysql_query($queryWatch);

$cor = mysql_fetch_assoc($2);
/* echo $cor['lat'];
echo $cor['lon'];  */
echo "<script type='text/javascript'>";
echo "var stockholm = new google.maps.LatLng(".$cor['lat']. ",". $cor['lon'].");";
echo "var parliament = new google.maps.LatLng(".$cor['lat']. ",". $cor['lon'].");";
echo "var marker;";
echo "var map;";

echo   "function initialize() {";
echo    "var mapOptions = {";
echo     "zoom: 15,";
echo           "mapTypeId: 

google.maps.MapTypeId.ROADMAP,";
echo          "center: stockholm";
echo        "};";

echo         "map = new google.maps.Map

(document.getElementById('map_canvas'),";
echo         "mapOptions);";

echo        "marker = new google.maps.Marker({";
echo          "map:map,";
echo          "draggable:true,";
echo        "animation: google.maps.Animation.DROP,
          position: parliament
        });
        google.maps.event.addListener(marker, 

'click', toggleBounce);
      }

      function toggleBounce() {

        if (marker.getAnimation() != null) {
          marker.setAnimation(null);
        } else {
          marker.setAnimation

(google.maps.Animation.BOUNCE);
        }
        }";
echo "</script>";
?>`

ajaxのスクリプトは次のとおりです。

function get() {
    $.post('fetch-map.php', {barcode: searchBarcode.barcode.value},
    function(output) {
        $('#mapContainer').html(output).show();
    });
}

ここでもマップ コンテナの css 属性は visibility:none; です。しかし、マップが機能しません...私が見逃しているものはありますか...??? 助けていただければ幸いです

4

1 に答える 1

0

すべての JS が投稿されている場合は、関数を呼び出していませんinitialize()。最後にこれを追加してみてください:

[..rest of code]
  echo "initialize();"
  echo "</script>";
于 2012-10-16T19:46:00.983 に答える